Die erste, was, was erforderlich hier bekannt sein wird, was sind die Anwendungen, die im Vordergrund ausgeführt werden:
Sie zur Zeit/Hintergrund-Anwendung mit ActivityManager.getRunningAppProcesses()
Vordergrund erkennen können Anruf.
So wird es in etwa so aussehen ::
class findForeGroundProcesses extends AsyncTask<Context, Void, Boolean> {
@Override
protected Boolean doInBackground(Context... params) {
final Context context = params[0].getApplicationContext();
return isAppOnForeground(context);
}
private boolean isAppOnForeground(Context context) {
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> appProcesses = activityManager.getRunningAppProcesses();
if (appProcesses == null) {
return false;
}
final String packageName = context.getPackageName();
for (RunningAppProcessInfo appProcess : appProcesses) {
if (appProcess.importance == RunningAppProcessInfo.IMPORTANCE_FOREGROUND && appProcess.processName.equals(packageName)) {
return true;
}
}
return false;
}
}
// Now you call this like:
boolean foreground = new findForeGroundProcesses().execute(context).get();
Sie wahrscheinlich dieses heraus auch überprüfen: Determining foreground/background processes.
getElapsedCpuTime()
diesen article Siehe:
die Zeit durch einen Prozess genommen zu messen seine gegebene Zeit zu laufen, können Sie diese Methode verwenden.
Überprüfen Sie, ob [dies] (http://StackOverflow.com/questions/6064137/Can-android-application-know-when-another-android-application-is-running) Link Ihnen helfen kann. – Hemanth
klicken Sie auf das Wort dies ... es ist ein Hyperlink :) – Hemanth