【发布时间】:2021-01-22 01:09:59
【问题描述】:
我尝试使用qr_code_scanner 请求真机上的相机权限以扫描二维码,但弹出窗口未打开我在info.plist 中添加NSCameraUsageDescription 并添加到我的podfile 中
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
'$(inherited)',
'PERMISSION_CAMERA=0',
'PERMISSION_PHOTOS=0',
'PERMISSION_MEDIA_LIBRARY=0',
]
end
end
end
这是我的询问代码 我试试这个
getCamera() async {
var status = await Permission.camera.status;
if (!status.isGranted) {
final result = await Permission.camera.request();
if (result.isGranted) {
setState(() {
getPerm = true;
});
}
} else {
setState(() {
getPerm = true;
});
}
}
还有这个
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback(onLayoutDone);
}
void onLayoutDone(Duration timeStamp) async {
_permissionStatus = await Permission.camera.status;
if (_permissionStatus.isGranted) {
setState(() {
getPerm = true;
});
}
}
void _askCameraPermission() async {
await Permission.camera.request();
if (await Permission.camera.request().isGranted) {
_permissionStatus = await Permission.camera.status;
setState(() {
getPerm = true;
});
}
}
并在按下按钮时调用 _askCameraPermission 函数 除了相机工作之外,这些方式都不适用于我和所有权限
【问题讨论】:
-
也许你已经授予了相机权限所以弹出不打开
标签: ios flutter ios-camera