Имя процесса совпадает с именем пакета в Android?

Под процессом я имею в виду то, что мы предоставляем вandroid:process и под пакетом я имею в виду пакет в

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.osg.appkiller"
    android:versionCode="1"
    android:versionName="1.0" >

ПодробнееПроцессы и потоки - Android-разработчик

Я хотел получить имена приложений всех запущенных приложений. Так что это то, что я сделал после просмотра различных источников (и это работает).

    ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    PackageManager packageManager = getPackageManager();
    final List<RunningAppProcessInfo> runningProcesses = activityManager.getRunningAppProcesses();
    for(RunningAppProcessInfo processInfo : runningProcesses) {
        CharSequence appName = null;
        try {
            appName = packageManager.getApplicationLabel(packageManager.getApplicationInfo(processInfo.processName, PackageManager.GET_META_DATA));
        } catch (NameNotFoundException e) {
            Log.e(TAG,"Application info not found for process : " + processInfo.processName,e);
        }
    }

Если вы видите документацию для PackageManager.getApplicationInfo

ApplicationInfo android.content.pm.PackageManager.getApplicationInfo(String packageName, int flags) throws NameNotFoundException

но я прохожу

processInfo.processName

где processName - имя запущенного процесса. Таким образом, мы в основном используем имя процесса в качестве имени пакета для получения информации о приложении.

Во-первых, правильный ли этот подход?Во-вторых, правда ли, что если мы не предоставляем процесс для действий / услуг и т. Д., Создается новый процесс с тем же именем, что и имя пакета?

Ответы на вопрос(1)

Ваш ответ на вопрос