将UIL添加到我的项目后,我还添加了权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
但对于具有targetSdkVersion =&#34; 23&#34;的android项目(棉花糖)我需要 检查一些&#34;危险&#34;使用前的权限(例如WRITE_EXTERNAL_STORAGE)。
例如:
if (checkSelfPermission(android.Manifest.permission.WRITE_EXTERNAL_STORAGE)
== PackageManager.PERMISSION_GRANTED) {
Log.v(TAG,"Permission is granted");
return true;
}
但我怎么检查呢?我不知道UIL在哪里使用它。
也许我误解或遗漏了文档中的内容。 任何帮助将不胜感激。
答案 0 :(得分:3)
但我怎么检查呢?
在尝试使用UIL中的任何内容之前,请在您自己的活动或片段中使用该代码来检查权限。
除非您使用的库碰巧有活动或片段,因此可能requestPermissions()
本身,否则您必须requestPermissions()
才能使用该库,以获得任何dangerous
权限该图书馆要求。
正如您所说,您不知道UIL在哪里使用这些权限,即使您知道今天的UIL,您可能也不知道UIL明天会在哪里使用它。因此,在使用UIL执行任何之前,您必须检查并请求(如果需要)权限。