在哪里可以找到有关android特定权限的更多信息
我需要从minSdkVersion=“19”升级旧的android应用程序,因此我需要处理所有权限 在清单中,它需要一些危险的权限。 e、 g:在哪里可以找到有关android特定权限的更多信息,android,android-permissions,Android,Android Permissions,我需要从minSdkVersion=“19”升级旧的android应用程序,因此我需要处理所有权限 在清单中,它需要一些危险的权限。 e、 g: 如何在代码中找到需要这些危险权限的地方?是否有依赖于每个权限的函数列表 关于MOUNT\u UNMOUNT\u文件系统-在哪里可以找到它是危险的还是正常的 在回答具体问题之前,我想说,如果你的应用程序被普通用户使用(即从Google play或其他商店下载),那么列出这么多权限可能会吓跑用户。 从这个问题上看,您似乎继承了其他人的代码,其中一些权限
MOUNT\u UNMOUNT\u文件系统
-在哪里可以找到它是危险的还是正常的在回答具体问题之前,我想说,如果你的应用程序被普通用户使用(即从Google play或其他商店下载),那么列出这么多权限可能会吓跑用户。 从这个问题上看,您似乎继承了其他人的代码,其中一些权限甚至不需要 这里需要注意的另一个重要问题是第三方应用程序(例如,从谷歌play store下载的应用程序)和手机制造商应用程序(购买手机时安装在手机上的大多数应用程序)之间的区别 制造商应用程序可以使用第三方无法使用的权限 关于你的问题:
ContextCompat.checkSelfPermission(Context,String)
等函数,通过检查是否授予权限来包装任何“危险”行为,以避免运行时SecurityException
s。
但在旧代码中发现“危险”行为几乎是不可能的,主要是因为Android操作系统与开发人员达成的协议是“您只需在清单中请求这些权限,我将确保不会引发运行时安全异常”。
恐怕这里需要人工搜索我为
MOUNT\u UNMOUNT\u FILESYSTEMS
中列出的权限添加了“dangrous”或“normal”注释,除非您正在为手机制造商编写应用程序,否则无法同时使用
<uses-permission android:name="android.permission.BLUETOOTH" /> <!-- normal -->
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> <!-- normal -->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <!-- normal -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- dangerous -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <!-- ??? -->
<uses-permission android:name="android.permission.WAKE_LOCK" /> <!-- normal -->
<uses-permission android:name="android.permission.INTERNET" /> <!-- normal -->
<uses-permission android:name="android.permission.VIBRATE" /> <!-- normal -->
<uses-permission android:name="android.permission.CAMERA" /> <!-- dangerous -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- dangerous -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- dangerous -->
<android:uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- dangerous -->
<android:uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="18" /> <!-- dangerous -->