2013-03-21 5 views
0

Я хочу, чтобы приложение домой по умолчанию name.For это я использовалКак получить стандартное домашнее приложение?

Intent intent = new Intent("android.intent.action.MAIN"); 
     intent.addCategory("android.intent.category.HOME"); 
     intent.addCategory("android.intent.category.DEFAULT"); 
     ResolveInfo resolveinfo =getApplicationContext().getPackageManager().resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY); 
defaultHomeName = resolveinfo.activityInfo.name; 

Это возвращает com.android.internal.app.ResolverActivity и когда я попытался следующие

List<RunningTaskInfo> runningTasks =((ActivityManager) getApplicationContext().getSystemService("activity")).getRunningTasks(1); 
    if (runningTasks != null && !runningTasks.isEmpty()) { 
     for (int i = 0; i < runningTasks.size(); i++) { 
      RunningTaskInfo runningtaskinfo = (RunningTaskInfo) runningTasks.get(i); 

     } 
    } 

получил домашнее имя как com.sec.android.app.twlauncher.Launcher внутри этого, когда на главном экране.

Почему одно и то же приложение показывает разные имена? Как получить уникальное имя для домашнего приложения по умолчанию для всех устройств?

ответ

1

Почему в этом же приложении отображаются разные названия?

Потому что это не одно и то же приложение.

В частности, com.android.internal.app.ResolverActivity является активностью распознавателя, к которой мы склонны относиться как к выбору активности, или просто «chooser» для краткости. Это подходит для resolveActivity(), потому что есть два или более действия, которые могут обрабатывать выбранные вами Intent.

Как получить уникальное имя для домашнего приложения по умолчанию для всех устройств?

С помощью queryIntentActivities() на PackageManager, вместо resolveActivity(), вы получите список всех установленных домашних экранов. Если в этом списке имеется более одной записи, после фильтрации собственного домашнего экрана (если вы пишете один), у вас нет надежного способа определить, какой из них является «стандартным домашним приложением».

Смежные вопросы