Develop
2016.11.28 11:49
[android] 버전 별 앱 알림 설정으로 이동하는 방법
조회 수 2149 댓글 0
첨부 '1' |
|
---|
# 내가 썼던 방법
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); }
# 참고할 방법 (해보지는 않음 ㅋㅋ)
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/
[참고] http://stackoverflow.com/questions/4421527/how-can-i-start-android-application-info-screen-programmatically
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
1101 | Database | [mysql] ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. | hooni | 2017.12.15 | 1160 |
1100 | Develop | [js] 문자열에서 숫자만 걸러내기 (jQuery 안쓰고 정규표현식) | hooni | 2017.12.14 | 1093 |
1099 | Develop | [js] URL 파싱하기 (jQuery 안쓰고) | hooni | 2017.12.14 | 1297 |
1098 | System/OS | [linux] 초간단 SquirrelMail 설치/설정 (다람쥐 메일) | hooni | 2017.12.11 | 4442 |
1097 | System/OS | [linux] 초간단 Postfix, Covecot, SSL/TLS (SMTP) | hooni | 2017.12.11 | 9303 |
1096 | Develop | [php] Laravel 5.4: Specified key was too long error | hooni | 2017.12.04 | 9212 |
1095 | Develop | [php] mysql_ 과 mysqli_ 의 차이 | hooni | 2017.12.01 | 1682 |
1094 | Database | [mysql] MySQL 한글 깨짐 현상 해결하기(UTF8) | hooni | 2017.12.01 | 5454 |
1093 | Etc | RSVP 란? | hooni | 2017.11.22 | 972 |
1092 | Database | [mysql] 중복데이터 삭제하는 초간단 쿼리 | hooni | 2017.11.22 | 3412 |
1091 | System/OS | [mac] How to uninstall MySQL on Mac OS. | hooni | 2017.11.08 | 875 |
1090 | System/OS | OpenSSL로 ROOT CA 생성 및 SSL 인증서 발급하기 | hooni | 2017.10.28 | 1445 |