在旧版本上,下面的代码可以工作。
ActivityManager am = (ActivityManager) getApplicationContext().getSystemService(ACTIVITY_SERVICE);
String pkgname = am.getRunningTasks(1).get(0).topActivity.getPackageName();
它不再适用于Android L.它总是返回启动器的包名。我如何在Android L中获得它?
或许能帮到你:
ActivityManager mActivityManager =(ActivityManager)this.getSystemService(Context.ACTIVITY_SERVICE);
if(Build.VERSION.SDK_INT > 20){
String mPackageName = mActivityManager.getRunningAppProcesses().get(0).processName;
}
else{
String mpackageName = mActivityManager.getRunningTasks(1).get(0).topActivity.getPackageName();
}
查看此链接