我正在尝试使用权限模型添加与外部存储相关的权限,但无法获取外部存储权限的弹出窗口。我添加了更多权限。这个只是不起作用。
答案 0 :(得分:3)
曲棍球库最近开始不使用外部存储的许可。因此,他们将maxSdkVersion的检查添加到18.您可以在Merged Manifest文件中看到这一点。 您需要做的就是添加此权限以访问外部存储。
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
tools:remove="android:maxSdkVersion" />
答案 1 :(得分:0)
您可以使用以下代码
if (Build.VERSION.SDK_INT >= 23) {
if (context.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED
|| context.checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED ||
context.checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED
|| context.checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED
|| context.checkSelfPermission(Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
requestPermissions(new String[]{Manifest.permission.ACCESS_COARSE_LOCATION,
Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA}, REQUEST_CODE_ASK_PERMISSIONS);
return;
}
}
答案 2 :(得分:0)
在我的情况下帮助移动CrashManager.register(this);代码执行后授予自己的许可。它帮助了我。
答案 3 :(得分:0)
根据Hockeyapp的文档:“如果您使用的是HockeySDK-Android 5.0.0和更高版本,则SDK会将WRITE_EXTERNAL_STORAGE权限限制为api级别为18或更低的设备。如果您的应用需要android.permission.WRITE_EXTERNAL_STORAGE才能运行,则可以通过附加'tools:node =“ replace”'来覆盖Hockey的隐式合并清单权限设置。这样,您的应用清单即可覆盖Hockeyapp的权限。参考:https://support.hockeyapp.net/kb/client-integration-android/hockeyapp-for-android-sdk#permissions-advanced
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
tools:node="replace"/>