本文介绍了PackageManager 的 applicationInfo.name 始终为 null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
PackageManager pm = this.getPackageManager();
ActivityManager am = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningAppProcessInfo> runningAppProcesses = am.getRunningAppProcesses();
for(RunningAppProcessInfo process : runningAppProcesses) {
try {
ApplicationInfo ai = pm.getApplicationInfo(process.processName, PackageManager.GET_META_DATA);
Log.d(TAG, applicationInfo.name + "");
} catch (NameNotFoundException e) {
e.printStackTrace();
}
}
process.processName
返回有效的包名称,但 applicationInfo.name
始终为 null.
process.processName
returns a valid package name but applicationInfo.name
is always null.
推荐答案
使用applicationInfo.loadLabel(packageManagerInstance)
来查找Application名称,但是applicationInfo.name应该是有原因的
没用.
Used applicationInfo.loadLabel(packageManagerInstance)
to find the Application name, but there should be a reason why applicationInfo.name
didn't work.
编辑
applicationInfo.name
是 Application
子类的名称(如果有).
applicationInfo.name
is the name of a Application
subclass if you have any.
这篇关于PackageManager 的 applicationInfo.name 始终为 null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!