SmT*_*SmT 13 permissions android android-permissions android-6.0-marshmallow
我按照本指南要求获取Android 6.0的权限,https://developer.android.com/preview/features/runtime-permissions.html#support-lib
但是,我必须销毁我的应用程序并重新启动以实际获得WRITE_EXTERNAL_STORAGE权限,否则它将无法创建文件.
我错过了什么吗?
if(ActivityCompat.checkSelfPermission(mContext, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_DENIED){
ActivityCompat.requestPermissions((MainActivity)mContext,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},MY_PERMISSION_REQUEST_WRITE_EXTERNAL_STORAGE);
} else {
Intent i = new Intent(v.getContext(), ServiceDownload.class);
v.getContext().startService(i);
}
Run Code Online (Sandbox Code Playgroud)
文件在服务中创建,这是模拟器而不是真实设备.
正如有人已经提到的那样,这是一个错误,但我在这个问题中发现您可以添加这一行:
android.os.Process.killProcess(android.os.Process.myPid());
Run Code Online (Sandbox Code Playgroud)
获得您的许可后。这不是真正的修复,只是有助于避免崩溃。
| 归档时间: |
|
| 查看次数: |
3251 次 |
| 最近记录: |