アクティブなアプリケーションをすべて表示するプログラムを作成しようとしています。
どこでも検索しましたが、パッケージ名のみを示すコードしか見つかりませんでした。
マスターがすべてのアクティブなアプリケーション名を表示する方法を教えていただければ、非常に役立ちます
アクティブなアプリケーションをすべて表示するプログラムを作成しようとしています。
どこでも検索しましたが、パッケージ名のみを示すコードしか見つかりませんでした。
マスターがすべてのアクティブなアプリケーション名を表示する方法を教えていただければ、非常に役立ちます
使ってみましたActivityManager.getRunningAppProcesses()
か?名前を取得するためのサンプル コードは次のとおりです。
ActivityManager am = (ActivityManager)this.getSystemService(ACTIVITY_SERVICE);
List l = am.getRunningAppProcesses();
Iterator i = l.iterator();
PackageManager pm = this.getPackageManager();
while(i.hasNext()) {
ActivityManager.RunningAppProcessInfo info = (ActivityManager.RunningAppProcessInfo)(i.next());
try {
CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(info.processName, PackageManager.GET_META_DATA));
Log.w("LABEL", c.toString());
}catch(Exception e) {
//Name Not FOund Exception
}
}
パッケージ名を取得している場合は、PackageManager を使用してアプリケーションに関する追加情報を取得できるはずです。
http://developer.android.com/reference/android/content/pm/PackageManager.html
アプリケーション アイコン、ApplicationInfo および ActivityInfo オブジェクトを取得する直接的な方法があります。頭のてっぺんから、どちらが読み取り可能な名前に誘導するのかわかりませんが、ここのメソッドのいずれかを介して直接アクセスできない場合は、アプリケーションリソースからアクセスできるはずです (このクラスからもアクセスできます)。
この投稿を作成する際にいくつかの誤った仮定を行っていましたが、今ではそれらが間違っていたことに気付きました。- 削除