uniapp如何实现打电话功能

在uniapp中如何实现点击按钮直接拨打电话的功能?需要调用哪个API,代码应该怎么写?是否需要在manifest.json中配置权限?

2 回复

在uni-app中调用系统电话功能,使用uni.makePhoneCall方法,传入电话号码即可。

示例代码:

uni.makePhoneCall({
  phoneNumber: '10086'
})

点击按钮触发此方法,系统会自动弹出拨号界面。


在 UniApp 中,可以通过调用 uni.makePhoneCall() API 实现拨打电话功能。该 API 兼容微信小程序、H5 和 App 平台。

代码示例:

// 在方法中调用
makePhoneCall() {
  uni.makePhoneCall({
    phoneNumber: '13800138000', // 电话号码
    success: () => {
      console.log('拨打电话成功');
    },
    fail: (err) => {
      console.log('拨打电话失败:', err);
    }
  });
}

注意事项:

  1. 权限配置

    • App 平台:在 manifest.jsonApp 模块配置 中勾选 电话 权限。
    • Android:需自动添加 <uses-permission android:name="android.permission.CALL_PHONE"/> 权限。
    • 部分平台可能需用户手动授权
  2. 兼容性

    • 全平台支持(微信小程序、H5、App)。
    • H5 端依赖浏览器实现,可能弹出确认框或直接调用系统拨号界面。
  3. 参数说明

    • phoneNumber:必需,字符串类型。

完整示例(Vue 页面):

<template>
  <view>
    <button @click="callPhone">拨打电话</button>
  </view>
</template>

<script>
export default {
  methods: {
    callPhone() {
      uni.makePhoneCall({
        phoneNumber: '10086'
      });
    }
  }
}
</script>

直接调用即可触发系统拨号界面,用户确认后开始呼叫。无需额外处理挂断逻辑,由系统控制。

回到顶部