I use following code in service to get the current foreground of running app in android but when i open any app it shows the name of the app in which I made this service
ActivityManager am = (ActivityManager)MyService.this.getSystemService(ACTIVITY_SERVICE);
                    // The first in the list of RunningTasks is always the foreground task.
                    ActivityManager.RunningTaskInfo foregroundTaskInfo = am.getRunningTasks(1).get(0);
                    String foregroundTaskPackageName = foregroundTaskInfo .topActivity.getPackageName();
                    PackageManager pm = MyService.this.getPackageManager();
                    PackageInfo foregroundAppPackageInfo = null;
                    try {
                        foregroundAppPackageInfo = pm.getPackageInfo(foregroundTaskPackageName, 0);
                    } catch (PackageManager.NameNotFoundException e) {
                        e.printStackTrace();
                    }
                    String packageName = foregroundAppPackageInfo.applicationInfo.loadLabel(pm).toString();
 
     
     
    