0

パッケージ名ではなく、実行中のアプリケーションの名前のみを持つことは可能ですか? 私は今このコードを持っています:

ActivityManager am = (ActivityManager) getSystemService(Activity.ACTIVITY_SERVICE);
        List<RunningAppProcessInfo> processes = am.getRunningAppProcesses();

        if (processes != null){
            for (int i=0; i<processes.size(); i++){
                RunningAppProcessInfo temp = processes.get(i);
                String pName = temp.processName;
                Log.d("Running process: ", pName);
            }
        }

ただし、次のようなパッケージ名を返しますcom.android.cameracameraたとえば またはのみが必要Nova launcherです。

4

1 に答える 1

1

これを試して :

final PackageManager pm = getApplicationContext().getPackageManager();
ApplicationInfo ai;
try {
   ai = pm.getApplicationInfo( this.getPackageName(), 0);
} 
   catch (final NameNotFoundException e) {
   ai = null;
}  
final String applicationName = (String) (ai != null ? pm.getApplicationLabel(ai) : "(unknown)");

これは、マニフェストのタグで定義されているアプリケーション名を返します。

于 2013-10-29T10:08:36.313 に答える