uni-app choosevideo、chooseImage在camera模式下提示没有权限
uni-app choosevideo、chooseImage在camera模式下提示没有权限
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Mac | 10.13.6 | HBuilderX |
产品分类:uniapp/App
PC开发环境操作系统:Mac
PC开发环境操作系统版本号:10.13.6
HBuilderX类型:正式
HBuilderX版本号:3.1.18
手机系统:Android
手机系统版本号:Android 11
手机厂商:摩托罗拉
手机机型:edge s
页面类型:vue
打包方式:云端
示例代码:
<view class="video" @click="facial">
<image src="../../static/icon/unload.png" mode="aspectFit"></image>
</view>
facial(){
uni.chooseVideo({
sourceType: ['camera'],
maxDuration: 15,
camera: 'front',
success: file => {
const path = file.tempFilePath;
uni.showLoading({
title: '上传中..'
})
uni.uploadFile({
url: 'https://www.rtutu.cn/xq/xqBack/uploadRadio',
filePath: path,
name: 'file',
header: {
'Content-Type': 'multipart/form-data',
},
success: function (res) {
uni.showToast({
title: '上传成功'
});
uni.hideLoading();
const data = res.data ? JSON.parse(res.data) : {};
if (data.code == 1) {
console.log(data.data)
} else {}
},
fail: function (res) {
uni.showToast({
title: '上传图片失败'
});
uni.hideLoading();
}
});
},
fail: res => {
console.log(res)
}
})
},
操作步骤:
- 点击facial方法提示没有权限
预期结果:
- 调用相机模式
实际结果:
{
"errMsg": "chooseVideo:fail No Permission",
"errCode": 11,
"code": 11
}
bug描述:
使用chooseVideo API 提示没有权限, 代码贴的是选取视频的api
更多关于uni-app choosevideo、chooseImage在camera模式下提示没有权限的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于uni-app choosevideo、chooseImage在camera模式下提示没有权限的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在uni-app中,chooseVideo和chooseImage在camera模式下提示"没有权限"通常是由于Android系统权限配置问题导致的。以下是解决方案:
-
检查Android权限配置:
- 在
manifest.json的App模块权限配置中,确保勾选了相机和存储权限 - 代码配置示例:
{ "permissions": { "CAMERA": { "request": "once" }, "WRITE_EXTERNAL_STORAGE": { "request": "once" } } } - 在
-
Android 6.0+动态权限处理:
- 在调用
chooseVideo前先申请权限:
async facial() { // 检查权限 const status = await uni.authorize({ scope: 'scope.camera' }); if (status.authSetting['scope.camera']) { uni.chooseVideo({ sourceType: ['camera'], // ...其他参数 }); } else { uni.showToast({ title: '需要相机权限', icon: 'none' }); } } - 在调用

