개발자의 백팩

[Android]안드로이드 6.0 마쉬멜로우 이상 권한요청 본문

Android

[Android]안드로이드 6.0 마쉬멜로우 이상 권한요청

gunnoooow 2019. 6. 14. 16:45

onCreate or onRestart에 구현

int permissionCheck = ContextCompat.checkSelfPermission(this, String.valueOf(new String[]{
Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.READ_PHONE_STATE}));

if (permissionCheck == PackageManager.PERMISSION_DENIED){
requestPermissions(new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.READ_PHONE_STATE}, 1001);
}else{
Toast.makeText(this, "Success", Toast.LENGTH_SHORT).show();
}

 

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
switch (requestCode){
case 1001:
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// 권한 승인됨!
StartWokrs(); // To do work!
break;
} else {
Toast.makeText(this,"서비스 이용을 위해 권한을 승낙하여야 합니다.",Toast.LENGTH_LONG).show();
finish();
}
return;
}
}