이미지 버튼을 눌럿을때 연동하는 방식은 해결햇습니다.
전체적인 권한도 작동하는데 문제는 제차 권한 요청시 다시보지않기 옵션을 선택한걸 확인하는
방법이 궁금합니다.
@Override
public void onClick(View v) {
//마쉬멜로우이상인지 체크
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
//전회걸기 권한을 확인
int permissionResult = checkSelfPermission(Manifest.permission.CALL_PHONE);
//해당 어플이 거부되있는지 확인
if (permissionResult == PackageManager.PERMISSION_DENIED) {
//사용자가 한번이라도 거부햇는지 확인
if (shouldShowRequestPermissionRationale(Manifest.permission.CALL_PHONE)) {
AlertDialog.Builder dialog = new AlertDialog.Builder(AdminMain.this);
dialog.setTitle("권한이 필요합니다.")
.setMessage("이 기능을 사용하기 위해서는 단말기의 \"전화걸기\"권한이 필요합니다 계속하시겠습니까?")
.setPositiveButton("네", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//새로 인스턴스를 생성햇기떄문에 한번더 버전체크를한다
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
//안드로이드에 권한을 요청합니다.
requestPermissions(new String[]{Manifest.permission.CALL_PHONE}, 1000);
}
}
})
.setNegativeButton("아니요", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(AdminMain.this, "기능을 취소했습니다", Toast.LENGTH_SHORT).show();
}
})
.create()
.show();
}//최초 권한요청
else {
requestPermissions(new String[]{Manifest.permission.CALL_PHONE}, 1000);
}
}//권한 있을경우
else {
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + tel));
startActivity(intent);
}
}//마쉬멜로우 미만
else {
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + tel));
startActivity(intent);
}
}
});
}
확인하는 방법이 아래쪽 응답확인 메서드에서 확인하는 방법이 있나요??
(응답확인 메서드는 안올렷습니다)