【发布时间】:2015-12-04 23:17:17
【问题描述】:
在android M中访问sdcard必须在运行时授予权限时手动强制停止和启动应用程序,如何以编程方式实现?
但是,如果应用程序被强制停止并重新启动,则可以访问 sdcard。
AndroidManifest.xml:
uses-permission-sdk-m android:name="android.permission.WRITE_EXTERNAL_STORAGE
/* **Checking permission **
if doesn't have request
else
browse file directory
*/
String[] perm = { Manifest.permission.WRITE_EXTERNAL_STORAGE };
if (checkSelfPermission(perm[0]) == PackageManager.PERMISSION_DENIED) {
requestPermissions(perm, REQ);
} else {
Explore(); //method to browse file directory
}
onRequestPermissionsResult
@Override
public void onRequestPermissionsResult(int requestCode,
String[] permissions, int[] grantResults) {
// TODO Auto-generated method stub
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//Not able to browse SD card until restart application
Explore(); //method to browse file directory
} else {
Log.i("onRequestPermissionsResult", " Request denied");
}
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
}
【问题讨论】:
-
我已经为它创建了库。通过简单的步骤即可轻松使用。 github.com/Kishanjvaghela/Ask-Permission
标签: android android-permissions android-6.0-marshmallow