我需要在 Android M 中使用麦克风。我尝试在清单中设置权限组,但无法使其正常工作。这是我在清单中得到的内容:
<permission-group android:name="android.permission-group.MICROPHONE"
android:label="label"
android:icon="@mipmap/day_icon"
android:priority="360"/>
<permission android:name="android.permission.MICROPHONE"
android:permissionGroup="android.permission-group.MICROPHONE"
android:protectionLevel="dangerous"
android:label="label" />
我还尝试过通过代码获取访问权限:
if (ContextCompat.checkSelfPermission(getActivity(),
Manifest.permission_group.MICROPHONE)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(getActivity(),
new String[]{Manifest.permission_group.MICROPHONE},
REQUEST_MICROPHONE);
}
警报不会显示以授予访问权限。
我仍然无法使用麦克风。有人知道如何获得麦克风的许可吗?
Note:这仅不适用于 Android M
要请求麦克风,您应该请求Manifest.permission.RECORD_AUDIO
而不是权限组Manifest.permission_group.MICROPHONE
.
所以,删除标签<permission/>
and <permission-group/>
在清单中,因为它们表明您想要create新的权限而不是use them.
然后要请求许可,只需执行以下操作:
if (ContextCompat.checkSelfPermission(getActivity(),
Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(getActivity(),
new String[]{Manifest.permission.RECORD_AUDIO},
REQUEST_MICROPHONE);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)