# 내가 썼던 방법
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.KITKAT) { Intent intent = new Intent(); intent.setAction( "android.settings.APP_NOTIFICATION_SETTINGS" ); intent.addCategory(Intent.CATEGORY_DEFAULT); //intent.setData(Uri.parse("package:" + getPackageName())); intent.putExtra( "app_package" , getPackageName()); intent.putExtra( "app_uid" , getApplicationInfo().uid); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); } else { String packageName = "com.ncsoft.nccomix" ; String SCHEME = "package" ; String APP_PKG_NAME_21 = "com.android.settings.ApplicationPkgName" ; String APP_PKG_NAME_22 = "pkg" ; String APP_DETAILS_PACKAGE_NAME = "com.android.settings" ; String APP_DETAILS_CLASS_NAME = "com.android.settings.InstalledAppDetails" ; Intent intent = new Intent(); final int apiLevel = Build.VERSION.SDK_INT; if (apiLevel >= 9 ) { // above 2.3 intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); Uri uri = Uri.fromParts(SCHEME, packageName, null ); intent.setData(uri); } else { // below 2.3 final String appPkgName = (apiLevel == 8 ? APP_PKG_NAME_22 : APP_PKG_NAME_21); intent.setAction(Intent.ACTION_VIEW); intent.setClassName(APP_DETAILS_PACKAGE_NAME, APP_DETAILS_CLASS_NAME); intent.putExtra(appPkgName, packageName); } startActivity(intent); } |
# 참고할 방법 (해보지는 않음 ㅋㅋ)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | packageName = "your.package.name.here" try { //Open the specific App Info page: Intent intent = new Intent(android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS); intent.setData(Uri.parse( "package:" + packageName)); startActivity(intent); } catch ( ActivityNotFoundException e ) { //e.printStackTrace(); //Open the generic Apps page: Intent intent = new Intent(android.provider.Settings.ACTION_MANAGE_APPLICATIONS_SETTINGS); startActivity(intent); } |
[참고] http://www.makeuseof.com/tag/stop-annoying-notifications-android/