Android 如何从SD卡中未安装的APK获取应用程序名称
你好,我在SD卡的文件夹里有一套apk。设备中尚未安装这些APK。现在在我的应用程序中,我想列出所有的应用程序名 在SD卡的文件夹里。我可以获取包名,但找不到获取应用程序名的方法。它总是出现在Android 如何从SD卡中未安装的APK获取应用程序名称,android,Android,你好,我在SD卡的文件夹里有一套apk。设备中尚未安装这些APK。现在在我的应用程序中,我想列出所有的应用程序名 在SD卡的文件夹里。我可以获取包名,但找不到获取应用程序名的方法。它总是出现在NameNotFoundException 例外 public static String getLabelByPackageName(Context context, String packageName) { PackageManager packMan = null;
NameNotFoundException
例外
public static String getLabelByPackageName(Context context,
String packageName) {
PackageManager packMan = null;
try {
ApplicationInfo applicationInfo = context.getPackageManager()
.getApplicationInfo(packageName, 0);
packMan = context.getPackageManager();
return packMan.getApplicationLabel(applicationInfo).toString();
} catch (NameNotFoundException e) {
return "Name Not Found";
}
}
如果未安装apk文件,则无法使用
PackageManager
获取这些文件,您必须将其与SD卡上的任何其他文件一样处理
试试这个。
File dir=new File(Environment.getExternalStorageDirectory()+"/path to folder with apk files");
//dir.listFiles() returns an array with all the files in your directory
//loop through and get all file names in the directory
for(File f : dir.listFiles())
if(f.getName().contains(".apk"))
//this is an apk file do something
不确定。但是试一下:
Resources r=p.getResourcesForApplication(p.getApplicationInfo(“pckgname”,0));int id=r.getIdentifier(“pckgname:string/app_name”、“pckgname”、“string”);String app_name=r.getString(id)代码>@MysticMagic不工作。好的,但我如何才能获得应用程序图标?