为什么我的 Android 应用程序不请求安装权限?

Why does my Android app not request permissions on install?

安装 APK 时,显示该应用不需要特殊权限。

在应用内启动相机时,它会询问用户是否允许该应用访问相机,这很好。

尝试使用麦克风时,由于权限问题,它没有询问并强制退出。

编辑(澄清):为什么应用程序不请求这些权限?

清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="lbu.c3369131.noter"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
    android:minSdkVersion="23"
    android:targetSdkVersion="23" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />

<application

在 Android 6.0 上,targetSdkVersion 为 23 或更高,您需要为所有 dangerous 权限调用 requestPermissions(),此外还需要 [=13] =] 清单中的元素。何时何地向用户请求权限(首先 运行,当用户单击大红色按钮时,等等)由您决定。

在您的情况下,听起来您是这样请求 CAMERA,但未能请求 RECORD_AUDIO。单独请求这些可能是有意义的,特别是如果您同时操作静态相机和录制视频,因为您不需要 RECORD_AUDIO 来拍摄照片。因此,例如,在 this sample app 中,我首先在 运行 上请求 CAMERA(和 WRITE_EXTERNAL_STORAGE),但我只在用户特别要求时才请求 RECORD_AUDIO录制视频。

在 运行 时未能请求 dangerous 权限,然后使用受该权限保护的某些 API,通常会导致 SecurityException.