android开发 给app设置应用白名单 即省电策略设置为无限制(小米,华为亲测有效)

跳转至设备设置应用省电策略页面

简单介绍本文的目的:解决了设备息屏后无法持续获取位置信息的问题,目前市场上最多的国产机莫过于华为,小米,下面就针对这两种机型给出解决方法。

话不多说,直接上代码

华为设备跳转至设置应用省电策略页面的代码:

		Intent intent = new Intent(packageName);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        ComponentName comp = new ComponentName("com.huawei.systemmanager","com.huawei.systemmanager.startupmgr.ui.StartupNormalAppListActivity");
        intent.setComponent(comp);
        ////检测是否有能接受该Intent的Activity存在
        List resolveInfos = mContext.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
        if (resolveInfos.size() > 0) {
            mContext.startActivity(intent);
        }

小米设备(适用于红米手机系列)跳转至设置应用省电策略页面的代码:

	Intent intent = new Intent(packageName);
    ComponentName componentName = new ComponentName("com.miui.powerkeeper", "com.miui.powerkeeper.ui.HiddenAppsConfigActivity");
    intent.setComponent(componentName);
    intent.putExtra("package_name", mContext.getPackageName());
    intent.putExtra("package_label", mContext.getResources().getString(R.string.app_name));
    //检测是否有能接受该Intent的Activity存在
    List resolveInfos = mContext.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
    if (resolveInfos.size() > 0) {
        mContext.startActivity(intent);
    }

你可能感兴趣的:(android应用权限设置页面)