Android 跳转权限管理界面总结 您所在的位置:网站首页 coloros权限管理 Android 跳转权限管理界面总结

Android 跳转权限管理界面总结

2024-07-10 03:33| 来源: 网络整理| 查看: 265

网上搜索一番,内容都是17年左右的,一点新鲜感都没有,现在已经2022年了,这里自己总结一下,随时使用随时更改

/** * @param * @author 小红妹 * @name com.tusizi.voiceevaluation.utils * @description 跳转各个手机系统权限设置界面 * @return * @time 2022/1/28 17:53 */ public class JumpPermissionManagement { private static final String TAG = "JumpPermissionManagement"; /** * Build.MANUFACTURER */ private static final String MANUFACTURER_HUAWEI = "HUAWEI";//华为 private static final String MANUFACTURER_MEIZU = "Meizu";//魅族 private static final String MANUFACTURER_XIAOMI = "Xiaomi";//小米 private static final String MANUFACTURER_SONY = "Sony";//索尼 private static final String MANUFACTURER_OPPO = "OPPO";//oppo private static final String MANUFACTURER_LG = "LG"; private static final String MANUFACTURER_VIVO = "vivo";//vivo private static final String MANUFACTURER_SAMSUNG = "samsung";//三星 private static final String MANUFACTURER_ZTE = "ZTE";//中兴 private static final String MANUFACTURER_YULONG = "YuLong";//酷派 private static final String MANUFACTURER_LENOVO = "LENOVO";//联想 /** * 此函数可以自己定义 * @param activity */ public static void GoToSetting(Activity activity){ switch (Build.MANUFACTURER){ case MANUFACTURER_HUAWEI: Huawei(activity); break; case MANUFACTURER_MEIZU: Meizu(activity); break; case MANUFACTURER_XIAOMI: Xiaomi(activity); break; case MANUFACTURER_SONY: Sony(activity); break; case MANUFACTURER_OPPO: OPPO(activity); break; case MANUFACTURER_LG: LG(activity); break; default: ApplicationInfo(activity); Log.e("goToSetting", "目前暂不支持此系统"); break; } } public static void Huawei(Activity activity) { try { Intent intent = new Intent(); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("packageName", activity.getApplicationInfo().packageName); ComponentName comp = new ComponentName("com.huawei.systemmanager", "com.huawei.permissionmanager.ui.MainActivity"); intent.setComponent(comp); activity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); goIntentSetting(activity); } } public static void Meizu(Activity activity) { try { Intent intent = new Intent("com.meizu.safe.security.SHOW_APPSEC"); intent.addCategory(Intent.CATEGORY_DEFAULT); intent.putExtra("packageName", activity.getPackageName()); activity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); goIntentSetting(activity); } } public static void Xiaomi(Activity activity) { try { Intent intent = new Intent("miui.intent.action.APP_PERM_EDITOR"); intent.putExtra("extra_pkgname", activity.getPackageName()); ComponentName componentName = new ComponentName("com.miui.securitycenter", "com.miui.permcenter.permissions.PermissionsEditorActivity"); intent.setComponent(componentName); activity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); goIntentSetting(activity); } } public static void Sony(Activity activity) { try { Intent intent = new Intent(); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("packageName", activity.getPackageName()); ComponentName comp = new ComponentName("com.sonymobile.cta", "com.sonymobile.cta.SomcCTAMainActivity"); intent.setComponent(comp); activity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); goIntentSetting(activity); } } public static void OPPO(Activity activity) { try { Intent intent = new Intent(); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("packageName", activity.getPackageName()); // ComponentName comp = new ComponentName("com.color.safecenter", "com.color.safecenter.permission.PermissionManagerActivity"); ComponentName comp = new ComponentName("com.coloros.securitypermission", "com.coloros.securitypermission.permission.PermissionAppAllPermissionActivity");//R11t 7.1.1 os-v3.2 intent.setComponent(comp); activity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); goIntentSetting(activity); } } public static void LG(Activity activity) { try { Intent intent = new Intent("android.intent.action.MAIN"); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("packageName", activity.getPackageName()); ComponentName comp = new ComponentName("com.android.settings", "com.android.settings.Settings$AccessLockSummaryActivity"); intent.setComponent(comp); activity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); goIntentSetting(activity); } } /** * 只能打开到自带安全软件 * @param activity */ public static void _360(Activity activity) { Intent intent = new Intent("android.intent.action.MAIN"); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra("packageName", activity.getPackageName()); ComponentName comp = new ComponentName("com.qihoo360.mobilesafe", "com.qihoo360.mobilesafe.ui.index.AppEnterActivity"); intent.setComponent(comp); activity.startActivity(intent); } /** * 应用信息界面 * @param activity */ public static void ApplicationInfo(Activity activity){ Intent localIntent = new Intent(); localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); if (Build.VERSION.SDK_INT >= 9) { localIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS"); localIntent.setData(Uri.fromParts("package", activity.getPackageName(), null)); } else if (Build.VERSION.SDK_INT Intent intent = new Intent(Settings.ACTION_SETTINGS); activity.startActivity(intent); } /** * 默认打开应用详细页 */ private static void goIntentSetting(Activity pActivity) { Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); Uri uri = Uri.fromParts("package", pActivity.getPackageName(), null); intent.setData(uri); try { pActivity.startActivity(intent); } catch (Exception e) { e.printStackTrace(); } } }

注:只是测试了华为和小米(手上只有这两个机型),其他机型大家自己测试一下,也欢迎大家分享好的方法一起学习。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有