我有一個涉及聲音池的應用程序 - 在應用程序啓動時,所有聲音都會在加載主屏幕後加載。檢查我的應用程序是否在Android中運行
現在,我想檢查應用程序是否正在運行 - 如果沒有運行我想重新加載應用程序 - 如果它正在運行,我不想重新加載應用程序。
對於我試過如下:
ActivityManager activityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses();
for(int i = 0; i < procInfos.size(); i++){
if(procInfos.get(i).processName.equals("com.me.checkprocess"))
{
Log.e("Result", "App is running - Doesn't need to reload");
}
else
{
Log.e("Result", "App is not running - Needs to reload);
}
}
這使結果很完美,但在檢查保持,直到procInfos.size較小的是0直到應用程序獲取過程com.me.checkprocess真的 - 這總是假的?所以它總是首先進入其他部分。
舉個例子:如果總進程是30,而且我的進程com.me.checkprocess在@ 29th運行。執行條件時。直到第28個過程,它纔是真正的第29個過程。
如何解決這部分 - 我想只有在檢查整個過程後才能到其他部分?
讓我知道!
使用'break;'語句。 – 2013-02-26 09:52:35
此行末尾缺少引號'Log.e(「Result」,「App is not running - Needs to reload);' – 2013-11-18 12:13:31