我看到這個問題:How can i check if an app running in Android?我如何檢查應用是否在Android中打開?
但我想獲得打開的應用程序的名稱(用戶看到)住在android中。
我想運行一個後臺服務來檢查。
我看到這個問題:How can i check if an app running in Android?我如何檢查應用是否在Android中打開?
但我想獲得打開的應用程序的名稱(用戶看到)住在android中。
我想運行一個後臺服務來檢查。
您可以使用此功能讓運行應用程序包的名稱:
public String foregroundPackage() {
ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> runningTaskInfo = manager.getRunningTasks(1);
ComponentName componentInfo = runningTaskInfo.get(0).topActivity;
packageName = componentInfo.getPackageName();
return componentInfo.getPackageName();
}
謝謝,但是當我運行你的代碼時,我只在任何應用程序中獲得** com.l.launcher **。 –
我不知道你是如何調用函數的,但我可以向你保證它會返回頂級應用程序包名稱。 –
例如,我有一個循環函數,每個5秒鐘,我把你的代碼在這個循環中獲取名稱。只有在我的應用程序,我得到正確的名稱(** com.example.test **),但在其他應用程序,我得到這個:** com.l.launcher ** :( –
https://www.google.com/?gws_rd=ssl#safe=active&q=check+if+app+is+running + android –