我是Android新手。我有客戶端服務器的應用程序。服務器在每分鐘後都會繼續向客戶端發送更新通知,並且在客戶端,我的應用程序會接收這些更新並使用Toast顯示它。但現在我的問題是每當我的客戶端應用程序進入後臺服務器不斷髮送更新通知,我的客戶端顯示它,就好像應用程序在前臺。我沒有得到如何檢查應用程序在後臺運行。android:如何檢查應用程序是否在後臺運行
9
A
回答
8
http://developer.android.com/guide/topics/fundamentals.html#lcycles是android應用程序生命週期的描述。
當活動進入後臺時,方法onPause()被調用。因此,您可以在此方法中停用更新通知。
0
您可以在ActivityManager中使用getRunningAppProcesses()。
36
更新,請參閱本第一:
Checking if an Android application is running in the background
要檢查,如果你的應用程序發送到後臺,你可以在應用程序中每個活動呼籲onPause()
此代碼:
/**
* Checks if the application is being sent in the background (i.e behind
* another application's Activity).
*
* @param context the context
* @return <code>true</code> if another application will be above this one.
*/
public static boolean isApplicationSentToBackground(final Context context) {
ActivityManager am = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = am.getRunningTasks(1);
if (!tasks.isEmpty()) {
ComponentName topActivity = tasks.get(0).topActivity;
if (!topActivity.getPackageName().equals(context.getPackageName())) {
return true;
}
}
return false;
}
對於這項工作,你應該包括在你的AndroidManifest.xml
<uses-permission android:name="android.permission.GET_TASKS" />
2
僅用於API級14及以上
可以使用ComponentCallbacks2到activity
,service
等
實施例:
public class MainActivity extends AppCompatActivity implements ComponentCallbacks2 {
@Override
public void onConfigurationChanged(final Configuration newConfig) {
}
@Override
public void onLowMemory() {
}
@Override
public void onTrimMemory(final int level) {
if (level == ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN) {
// app is in background
}
}
}
相關問題
- 1. 如何檢查應用程序是否在前臺或後臺
- 2. 檢查應用程序是否從後臺任務運行
- 3. 如何檢查應用程序是否在後臺?
- 4. Android應用程序是否在後臺運行?
- 5. 如何識別應用程序是否在後臺運行
- 6. Android,在後臺運行應用程序
- 7. 在後臺運行android應用程序?
- 8. 在後臺運行應用程序android
- 9. 如何檢查Android應用程序是否回到前臺?
- 10. 檢查我的應用程序是否在Android中運行
- 11. android如何檢測應用程序是否在過去運行
- 12. 我如何知道我的Android應用程序是否在後臺運行?
- 13. 如何檢查WPF應用程序是否已在運行?
- 14. 如何檢查應用程序是否正在運行,否則運行它?
- 15. 如何在Android中在後臺運行我的應用程序?
- 16. 如何檢查正在運行的進程是否是後臺進程?
- 17. 在後臺運行的應用程序,並檢查新數據
- 18. Swift 3:檢查應用程序是否在後臺
- 19. 如何檢查應用程序是否正在運行(Android> 5.1)?
- 20. 如何檢查硒服務器是否在後臺運行
- 21. 如何在android的後臺運行應用程序?
- 22. 如何在後臺運行Android應用程序?
- 23. Android:如何在後臺永遠運行應用程序?
- 24. 如何檢查SWF是否作爲AIR應用程序運行?
- 25. 如何檢查應用程序是否通過SBT運行?
- 26. 確定應用程序是否在後臺運行
- 27. 檢查程序是否正在運行
- 28. 如何實時檢查Android應用程序的後臺堆棧?
- 29. Android檢測應用程序是否進入後臺
- 30. 檢查應用程序是否在前臺或後臺運行(使用同步適配器)
這也將停用通知從該活動開始另一項活動時發送。 – 2016-07-20 18:52:32
在我的項目中,我有太多的活動如何知道應用程序在後臺? – 2016-12-20 03:32:10