0

Я ищу способ получить название деятельности в Android Lollipop.Получить название деятельности в Android

То, что я имею в виду, это не имя процесса или даже имя приложения, а заголовок, присвоенный активности при его открытии. Например, когда вы переходите к http://www.google.com/ в Chrome, название изменяется с «Chrome» на «Google», что можно увидеть, когда вы нажмете кнопку последних приложений, и мне нужно что-то, что возвращает слово «Google».

Ниже приведена моя ужасная попытка перебирать текущие приложения и пытаться найти эту информацию.

ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); 
    List<ActivityManager.RunningAppProcessInfo> runningAppProcessInfo = am.getRunningAppProcesses(); 

    for (int i = 0; i < runningAppProcessInfo.size(); i++) { 
     PackageManager pm = context.getPackageManager(); 
     ApplicationInfo info = null; 
     try { 
      info = pm.getApplicationInfo(runningAppProcessInfo.get(i).processName, 0); 
      Log.i("DEBUG_LABEL", "Process Name: " + runningAppProcessInfo.get(i).processName); 
      Log.i("DEBUG_LABEL", "App Label: " + pm.getApplicationLabel(info).toString()); 
      if (info.className != null) { 
       Log.i("DEBUG_LABEL", "Info's package and class name: " + info.packageName + ", " + info.className); 
       ComponentName cName = new ComponentName(info.packageName, info.className); 
       ActivityInfo activityInfo = pm.getActivityInfo(cName, PackageManager.GET_META_DATA); 
       Log.i("DEBUG_LABEL", "Activity Label: " + activityInfo.loadLabel(pm)); 
      } 
     } catch (PackageManager.NameNotFoundException e) { 
      e.printStackTrace(); 
     } 
    } 
+0

Это приложение или ВСЕ приложения? – VM4

+0

Это должно работать для всех приложений (в идеале) –

+0

http://stackoverflow.com/questions/11391451/list-out-installed-running-applications-in-android-programmatically – VM4

ответ

1

Видимо то, что я искал был description задачи.

List<ActivityManager.RunningTaskInfo> rTaskInfoList = am.getRunningTasks(100); 

... 

return rTaskInfoList.get(i).description.toString() // Returns "Google", instead of "Chrome" 

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

  • Нет связанных вопросов^_^