我的环境:
- permission_handler 3.0.0
- Flutter v1.2.1
- OSX High Sierra 10.13.6
- Xcode版本10.1。
我在iOS模拟器中请求麦克风权限时,我的应用程序崩溃了。
PermissionStatus mic = await PermissionHandler()
.checkPermissionStatus(PermissionGroup.microphone);
print('microphone permission? ${mic.toString()}');
try {
if (mic != PermissionStatus.granted) {
await PermissionHandler().requestPermissions([PermissionGroup.microphone]);
}
} catch (e) {
print(e);
}
没有错误被抛出或捕获,但在Flutter调试控制台中,我看到:
flutter: microphone permission? PermissionStatus.unknown
Lost connection to device.
这意味着
checkPermissionStatus()
返回了 unknown
。但是当我请求权限时,应用程序崩溃了。我无法在真正的iPhone上试验这个问题。在Android模拟器上一切都完美运作。我发现Xcode 10.1的麦克风存在一些问题: 我尝试过
- 使用
flutter clean
进行新编译 - 在Hardware > Audio Input中更改模拟器麦克风输入
有人能够在 Xcode
10.1
/10.2
模拟器上使用 permission_handler:3.0.0
授予麦克风权限吗?其他Flutter权限插件呢?