Androidでアクティブなアプリケーション名を取得します
-
27-09-2019 - |
質問
すべてのアクティブなアプリケーションを示すプログラムを作成しようとしています。
どこでも検索しましたが、 パッケージ名 それだけ。
マスターがすべてのアクティブなものを表示する方法を教えていただければ、それは大いに助けになるでしょう アプリケーション名
解決
使ってみましたか 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オブジェクトを取得するための直接的な方法があります。私の頭の上から、どちらが読みやすい名前にあなたを誘導するかはわかりませんが、ここでの方法の1つから直接アクセスできない場合は、アプリケーションリソースからアクセスできるはずです(このクラスからもアクセスできます)。
この投稿を作成する際に、私はいくつかの誤った仮定をしましたが、今ではそれらが間違っていることに気付きました。 - 削除
所属していません StackOverflow