Notice
Recent Posts
Recent Comments
Link
투케이2K
203. (AndroidStudio/android/java) 애플리케이션 알림 활성 , 비활성 확인 및 알림 설정창 인텐트 이동 실시 - app notification intent 본문
Android
203. (AndroidStudio/android/java) 애플리케이션 알림 활성 , 비활성 확인 및 알림 설정창 인텐트 이동 실시 - app notification intent
투케이2K 2021. 10. 5. 19:18[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : java
[소스 코드]
/** ============ [애플리케이션 노티피케이션 알림 설정 창 이동 메소드] ============ **/
public void getIntentNotificationSetting(){
//TODO [애플리케이션 알림 설정 활성 및 비활성 확인 실시]
boolean isNotificationEnable = NotificationManagerCompat.from(getApplication()).areNotificationsEnabled();
Log.d("---","---");
Log.w("//===========//","================================================");
Log.d("","\n"+"[A_AA_Test_Java > getIntentNotificationSetting() 메소드 : 노티피케이션 알림 활성 및 비활성 확인]");
Log.d("","\n"+"[상태 : "+String.valueOf(isNotificationEnable)+"]");
Log.w("//===========//","================================================");
Log.d("---","---");
Intent intent = null; //TODO [초기 인텐트 변수 선언]
try {
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){ //TODO [OS 가 오레오 이상인 경우]
Log.d("---","---");
Log.w("//===========//","================================================");
Log.d("","\n"+"[A_AA_Test_Java > getIntentNotificationSetting() 메소드 : 노티피케이션 알림 설정창 이동]");
Log.d("","\n"+"[버전 : 오레오 이상]");
Log.w("//===========//","================================================");
Log.d("---","---");
intent = new Intent(Settings.ACTION_APP_NOTIFICATION_SETTINGS);
intent.putExtra(Settings.EXTRA_APP_PACKAGE, getPackageName());
}
else if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP ){ //TODO [OS 가 롤리팝 이상인 경우]
Log.d("---","---");
Log.e("//===========//","================================================");
Log.d("","\n"+"[A_AA_Test_Java > getIntentNotificationSetting() 메소드 : 노티피케이션 알림 설정창 이동]");
Log.d("","\n"+"[버전 : 롤리팝 이상]");
Log.e("//===========//","================================================");
Log.d("---","---");
intent = new Intent("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("app_package", getPackageName());
intent.putExtra("app_uid", getApplicationInfo().uid);
}
else {
Log.d("---","---");
Log.e("//===========//","================================================");
Log.d("","\n"+"[A_AA_Test_Java > getIntentNotificationSetting() 메소드 : 노티피케이션 알림 설정창 이동]");
Log.d("","\n"+"[버전 : 롤리팝 미만]");
Log.e("//===========//","================================================");
Log.d("---","---");
intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setData(Uri.parse("package:" + String.valueOf(getPackageName())));
}
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(intent);
overridePendingTransition(0, 0);
}
catch (Exception e){
e.printStackTrace();
}
}
[결과 출력]
반응형
'Android' 카테고리의 다른 글
Comments