uni-app 安卓调用uni.makePhoneCall拨打电话无效

uni-app 安卓调用uni.makePhoneCall拨打电话无效

开发环境 版本号 项目创建方式
Mac macOS Big Sur 11.2.3 HBuilderX
### 操作步骤:
- 调用拨打

### 预期结果:
- 弹出授权框,同意后,打开拨打电话界面

### 实际结果:
- 没有任何反馈,只有回调函数里面"errMsg": "makePhoneCall:ok"。

### bug描述:
小米系统12.5,android版本11。 安卓打包自定义基座 ,运行的时候uni.makePhoneCall,回调"errMsg": "makePhoneCall:ok"。但是在自定义基座里面无法调起拨打界面,打包正式包,也无法调起,在标准运行基座里面可以调起,

更多关于uni-app 安卓调用uni.makePhoneCall拨打电话无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复
<uses-permission android:name="android.permission.CALL_PHONE"/> 这个权限添加下

更多关于uni-app 安卓调用uni.makePhoneCall拨打电话无效的实战教程也可以访问 https://www.itying.com/category-93-b0.html


我也碰到了,配置了call_phone 都没用。自定义基座,不能调用手机问题

那如果打成正式包就可以调用了吧

要重新打自定义基座的包

这个问题可能是由于Android权限配置或系统限制导致的。以下是可能的原因和解决方案:

  1. 权限问题: 确保在manifest.json中已添加电话权限:
"permission": {
    "android.permission.CALL_PHONE": {}
}
  1. 系统限制: Android 11+对电话权限有更严格的限制,需要动态请求权限:
uni.authorize({
    scope: 'scope.phone',
    success() {
        uni.makePhoneCall({phoneNumber: '10086'})
    }
})
  1. 自定义基座问题: 尝试以下步骤:
  • 清除HBuilderX缓存
  • 重新生成自定义基座
  • 检查打包时是否勾选了电话权限
  1. 设备兼容性问题: 小米系统可能有特殊限制,可以尝试:
  • 检查系统设置中的应用权限
  • 在设置中手动授予电话权限
  • 测试其他Android设备
  1. 代码检查: 确保调用方式正确:
uni.makePhoneCall({
    phoneNumber: '10086',
    success: (res) => console.log(res),
    fail: (err) => console.log(err)
})
回到顶部