android 开发的 Uno-Platform 权限问题

Uno-Platform permission problems for android development

我是 Uno-Plaform 开发领域的新手,我想创建自己的语音识别。

我的语音识别设置适用于 cortana 和 UWP, 但是我的 android phone 的设置产生了一些问题。

我已将这些代码行添加到我的 Android 清单中:

AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />

通过这些代码行,我应该能够在技术上录制来自 phone 的音频。

System.Exception: 'Error during speech recognition: InsufficientPermissions'

但这是我在 android 设备上 运行 之后得到的异常。

在查看 android 之后,我发现了 危险的权限 ,这就是我遇到问题的原因。 经过几个小时的研究和测试,我还没有找到一种方法来打开权限提示,这样我就可以使用我的 microphone.

任何人都可以解释或帮助我解决这个问题吗?

提前致谢!

由于这是一个常见的要求,Uno 实际上提供了一些扩展,以便在 Android.

上轻松请求权限

此代码仅适用于 Android

#if __ANDROID__

// This will only check if the permission is granted but will not prompt the user.
bool isGranted = await Windows.Extensions.PermissionsHelper.CheckPermission(ct, Android.Manifest.Permission.RecordAudio);

// This will prompt the user with the native permission dialog if needed. If already granted it will simply return true.
bool isPermissionGranted = await Windows.Extensions.PermissionsHelper.TryGetPermission(ct, Android.Manifest.Permission.RecordAudio);

#endif

该扩展的源可用here