1
我正在编写一个代码,以便从手机上最后安装的应用程序提取包名称,应用程序名称和图标。我可以从应用程序信息中获取应用程序的通用名称和图标,但似乎无法弄清楚如何获取程序包名称。我发现所有能够获取包名称的代码都提供了我的应用程序包名称,而不是上次安装的应用程序。提取我手机上最后安装的应用程序的包名称
看来我需要找到一个方法来获取包名称,在那里我可以传递应用程序信息作为参数(就像我为应用程序的通用名称和图标所做的那样)。
final PackageManager pm = context.getPackageManager();
ApplicationInfo ai;
try {
ai = pm.getApplicationInfo(intent.getData().getSchemeSpecificPart(), 0);
Log.d("tag_name","Application Info" + ai);
PACKAGE_NAME = context.getApplicationContext().getPackageName();
Log.d("tag_name","Package Name" + PACKAGE_NAME);
} catch (final PackageManager.NameNotFoundException e) {
ai = null;
}
final String applicationName = (String) (ai != null ? pm.getApplicationLabel(ai) : "(unknown)");
Log.d("tag_name", "Application NAME" + applicationName);
// http://www.carbonrider.com/2016/01/01/extract-app-icon-in-android/
try {
Drawable icon = context.getPackageManager().getApplicationIcon(ai);
Log.d("tag_name", "ICON" + icon);}
catch (Exception e){}
非常感谢!这工作:) –