简体   繁体   中英

ApplicationInfo for Settings pages in android

I'm trying to get the ApplicationInfo for Settings.ACTION_ACCESSIBILITY_SETTINGS or Settings.ACTION_BATTERY_SAVER_SETTINGS , so that I can launch them directly.

I tried following steps but it's return setting's ApplicationInfo .

private static final String[] SETTINGS_ACTION_MENUS = new String[]{
      Settings.ACTION_ACCESSIBILITY_SETTINGS,Settings.ACTION_ADD_ACCOUNT};


public void getSettingPages(){
    for(String menu : SETTINGS_ACTION_MENUS){
        final Intent intent = new Intent(menu);
        ComponentName componentName = intent.resolveActivity(packageManager);
        if(componentName != null){
            try {
                ApplicationInfo info = packageManager.getApplicationInfo(componentName.getPackageName(),0);
                if(packageManager.getLaunchIntentForPackage(info.packageName) != null){
                    launchableApps.add(info);
                }
            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
            }
        }
    }
}

I tried following steps but it's return setting's ApplicationInfo

That is because those Intent actions are tied to activities in the Settings app. Individual activities do not have their own ApplicationInfo .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM