ios - iOS上的相机权限一直被拒绝
问题描述
此代码正在请求相机权限以初始化相机以供以后使用,它在 Android 上运行良好,但在 iOS 上,权限不断被拒绝,而不显示权限请求对话框
void _initCamera() async {
if (await PermissionsService().hasCameraPermission()) {
setState(() {
isCameraPermissionGranted = true;
});
print('camera permission granted');
} else {
bool isGranted = await PermissionsService().requestCameraPermission(
onPermissionDenied: () {
AppUtil.showAlertDialog(
context: context,
heading: 'info',
message:
'You must grant this camera access to be able to use this feature.',
firstBtnText: 'Give Permission',
firstFunc: () async {
Navigator.of(context).pop(false);
await _initCamera();
},
secondBtnText: 'Leave',
secondFunc: () async {
print('camera permission denied');
Navigator.of(context).pop();
Navigator.of(context).pop();
},
);
});
setState(() {
isCameraPermissionGranted = isGranted;
});
return;
}
if (isCameraPermissionGranted) {
//initialization code
}
知道为什么会发生这种行为吗?
解决方案
将此行添加到 iOS Runner 文件夹中的 info.plist 文件中,这将为 iOS 应用程序授予相机访问权限
<key>NSCameraUsageDescription</key>
<string>This app requires access to the camera.</string>
推荐阅读
- excel - DAX 中的 PowerBI DISTINCT SUMX
- python - Django 查询字符串提取字典
- stored-procedures - CosmosDB 存储过程 - 使用分区键进行搜索
- python - 无法在 Windows 上安装 PySimpleGUI “ModuleNotFoundError: No module named 'PySimpleGUI'”
- javascript - 如何将“删除按钮”附加到在 JS 中新创建的每个列表项?
- json - 解析 JSON 数据第 2 部分
- python - 新创建的工作表不断被删除 - Python/Pandas/Openpyxl
- c - Chromium OS 中的 fread 实现是由什么组成的?
- java - 为什么 jaxws-maven-plugin 忽略我的 .WSDL 文件?
- r - 在 R 中,如何从数据框中删除空行并从单元格中提取一个值并将其粘贴到另一个单元格中?