Üst aktivite için yoklama tarafından Uygulamaları ayırt edebilirsiniz:
private String lastPackageName;
ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
// get the info from the currently running task
List<ActivityManager.RunningTaskInfo> taskInfo = am.getRunningTasks(1);
Log.d("topActivity", "CURRENT Activity ::"
+ taskInfo.get(0).topActivity.getClassName());
ComponentName componentInfo = taskInfo.get(0).topActivity;
String packageName = componentInfo.getPackageName();
if(lastPackageName != packageName){
//Probably application changed
}
lastPackageName = packageName;
Ama bu .. Her zaman kullanıcı geri bastığı bu bilgi için yoklama deneyebilirsiniz bu bilgi için yoklamak ne sıklıkla size kalmış olacak , ev düğmeleri veya ekrana presler .. Ama belli ki çok fazla ve kötü yoklama tekniği olacaktır. How to be notified when foreground (top) activity (application) changes
Kaynak: https://stackoverflow.com/a/4753333/1276374
sen lütuf bu soruyu açmalıdır
bu soru zaten daha önce olmadan istedi ve hiçbir yeterli cevabı var olmuştur gibi görünüyor. Cevabım açıkça kabul edilmeye değer bir cevap değil, ben de olası çözümler hakkında merak ediyorum –