DEV/ANDROID

안드로이드 6.0이상에서 갤러리에서 사진 불러오기가 안되는 문제(Android 6.0 can't get image from gallery)

Guitaryc 2016. 8. 12. 14:15
반응형

안드로이드 마쉬멜로 이상 버전에서 갤러리에서 사진을 불러오는 코드가 안먹었는다.


찾아보니 마쉬멜로 이상에선 런타임에 권한설정을 주어야 한다.



if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
checkPermissions();
}



private void checkPermissions(){

if (ContextCompat.checkSelfPermission(getActivity(),
Manifest.permission.READ_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED||
ContextCompat.checkSelfPermission(getActivity(),
Manifest.permission.WRITE_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED) {

ActivityCompat.requestPermissions(getActivity(),
new String[]{
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
},
1052);

}

}


public void onRequestPermissionsResult(int requestCode,
String permissions[],
int[] grantResults) {
switch (requestCode) {
case 1052: {
// If request is cancelled, the result
// arrays are empty.
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED
&& grantResults[1] == PackageManager.PERMISSION_GRANTED ){

// permission was granted.

} else {
// Permission denied - Show a message
// to inform the user that this app only works
// with these permissions granted

}
return;
}

}
}

출처

http://stackoverflow.com/questions/38440362/android-cant-get-image-from-gallery

반응형