您应该在 Manifest 中提及运行时权限吗?
Should you mention runtime permission in Manifest?
我正在使用 WRITE_EXTERNAL_STORAGE
运行时权限。但是,即使我没有在我的清单文件中提到 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
,该应用程序似乎也能正常工作。
问题:在清单中添加/不添加运行时权限有什么影响,以及有关权限的常见最佳实践。
从 Android 4.4 (API 19) 开始,当您的应用想要在外部写入自己的 application-specific 目录时,无需请求 WRITE_EXTERNAL_STORAGE 权限存储(由 getExternalFilesDir() 方法提供)。但是,要使您的应用与级别 <= 18 兼容,您将需要 uses-permission 标签。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
您可能遇到的是 WRITE_EXTERNAL_STORAGE 权限从 Android 10 开始几乎已被弃用。这是 Google 分区存储执行的一部分:
https://developer.android.com/preview/privacy/storage
您应该在 AndroidManifest 中声明运行时权限。用另一个危险的权限尝试同样的事情,看看它是否以同样的方式起作用。
我正在使用 WRITE_EXTERNAL_STORAGE
运行时权限。但是,即使我没有在我的清单文件中提到 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
,该应用程序似乎也能正常工作。
问题:在清单中添加/不添加运行时权限有什么影响,以及有关权限的常见最佳实践。
从 Android 4.4 (API 19) 开始,当您的应用想要在外部写入自己的 application-specific 目录时,无需请求 WRITE_EXTERNAL_STORAGE 权限存储(由 getExternalFilesDir() 方法提供)。但是,要使您的应用与级别 <= 18 兼容,您将需要 uses-permission 标签。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
您可能遇到的是 WRITE_EXTERNAL_STORAGE 权限从 Android 10 开始几乎已被弃用。这是 Google 分区存储执行的一部分:
https://developer.android.com/preview/privacy/storage
您应该在 AndroidManifest 中声明运行时权限。用另一个危险的权限尝试同样的事情,看看它是否以同样的方式起作用。