private
ActivityResultLauncher<String> requestPermissionLauncher =
registerForActivityResult(
new
RequestPermission(), isGranted -> {
if
(isGranted) {
displayPhoneNumber();
}
else
{
}
});
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txtPhoneNo = (TextView)findViewById(R.id.txtPhoneNo);
checkPhoneNumberPermission();
}
private
void
checkPhoneNumberPermission() {
boolean
permissionGranted =
if
(ContextCompat.checkSelfPermission(
CONTEXT, Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED);
if
(permissionGranted()) {
displayPhoneNumber();
return
}
boolean
permissionDenidedOnce = ActivityCompat.shouldShowRequestPermissionRationale(permission.READ_PHONE_STATE);
if
(permissionDenidedOnce) {
doSomething();
return
}
requestPermissionLauncher.launch(Manifest.permission.READ_PHONE_STATE);
}
private
void
displayPhoneNumber() {
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
txtPhoneNo.setText(
"전화번호"
+ telephonyManager.getLine1Number().replace(
"-"
,
""
).replace(
"+82"
,
"0"
));
}