uni-app中uni.makePhoneCall在App中存在Bug

uni-app中uni.makePhoneCall在App中存在Bug

7 回复

需要应用重启后才能正常

更多关于uni-app中uni.makePhoneCall在App中存在Bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html


麻烦官方排查下

代码怎么操作的 最好提供下示例demo

就是先点击执行uni.makePhoneCall() 提示权限授权时点禁止,然后再次执行uni.makePhoneCall 提示权限时点同意,这时候可以调起拨打电话,从电话界面再回到app,第三次点击执行uni.makePhoneCall就没有反应了,也没有报错。

回复 拓荒: 收到

好的,谢谢

在uni-app中,uni.makePhoneCall接口用于调用系统拨号功能。如果在App端遇到Bug,常见原因包括:

  1. 号码格式问题:确保传入的phoneNumber参数为纯数字字符串,且包含国家/地区码(如"+8613800138000")。特殊字符(如空格、横杠)可能导致调用失败。

  2. 平台差异

    • Android需检查是否授予CALL_PHONE权限。在manifest.json中配置权限后,部分机型仍需动态申请。
    • iOS对拨号限制较严,仅支持直接唤起拨号界面,无法自动拨出。
  3. 模拟器与真机差异:部分模拟器无法正常调用系统电话功能,建议使用真机测试。

  4. 回调函数处理:若接口调用无响应,检查success/fail/complete回调中的日志输出,定位具体错误。

示例代码:

uni.makePhoneCall({
  phoneNumber: '13800138000',
  success: () => console.log('拨号界面调起成功'),
  fail: (err) => console.log('失败原因:', err)
});
回到顶部