在开发webview打开第三方链接时,
我在使用uniapp制作多端APP时,发现在小程序、APP上,无法弹出授权通知。
报错:[features/base/tracks] Failed to create local tracks audio,video [object Object]

- 发布:2024-08-01 14:20
- 更新:2024-08-01 18:43
- 阅读:2113

5***@qq.com (作者)
问题解决了,分享给有需要的人。
原因
uniapp(老版本)的APP实现是基于APP端的js渲染,uniapp构建app(老的)其实就是构建了一个webview。uniapp自带一个叫做HTML5+的技术。
在uniapp里开发webview,本质上就是在webview里套webview。可以通过html5+ 实现监听其内部权限调用,最终反馈到APP层。
如何实现
在调用webview的页面,例如webviewtest.vue的onload方法中插入权限调用的代码,例如:
//监听授权
plus.android.requestPermissions(['android.permission.CAMERA'], function(e) {
if (e.deniedAlways.length > 0) { //权限被永久拒绝
// 弹出提示框解释为何需要权限,引导用户打开设置页面开启
console.log('权限被永久拒绝' + e.deniedAlways.toString());
}
if (e.deniedPresent.length > 0) { //权限被临时拒绝
// 弹出提示框解释为何需要权限,可再次调用plus.android.requestPermissions申请权限
console.log('权限被临时拒绝' + e.deniedPresent.toString());
}
if (e.granted.length > 0) { //权限被允许
console.log('权限被允许' + e.granted.toString());
}
})
其他权限参考(安卓)
https://ask.dcloud.net.cn/article/38467
最后
记得在mainfest.json中配置权限。
1***@qq.com
那ios上怎么处理?
2024-12-26 10:04