1.获取apk版本号
private String GetVersionInfo(String packagename)
{boolean flag=true;
try {
PackageManager manager = this.getPackageManager();
PackageInfo info = manager.getPackageInfo(packagename, 0);
String version = info.versionName; //获取应用packagename的版本号
return version+" versionCode= "+info.versionCode;
} catch (Exception e) {
e.printStackTrace();
return "";
}
}
(2)某个应用是否已安装
private void Getinstalled(String packagename)
{
boolean flag=true;
try {
PackageManager manager = this.getPackageManager();
PackageInfo packageInfo = manager.getPackageInfo(packagename, 0);
} catch (NameNotFoundException e) {
flag = false;
e.printStackTrace();
}
if(flag ==false){
System.out.println("nation==========================没有安装");
}else{
System.out.println("nation=====================已经安装");
}
}
(3)/判断的具体应用 是否是系统应用
private boolean isDefaultApplication(String packageName) {
boolean flag = false;
boolean isDefault = false;
PackageManager pckMan = this.getPackageManager();
List<PackageInfo> packs = pckMan.getInstalledPackages(0);
int count = packs.size();
for (int i = 0; i < count && !flag; i++) {//
PackageInfo p = packs.get(i);
ApplicationInfo appInfo = p.applicationInfo;
if ((appInfo.flags & ApplicationInfo.FLAG_SYSTEM) > 0) {
Log.v("====nation===","系统应用 appname= " + appInfo.packageName + appInfo.icon );
if (packageName.equals(appInfo.packageName))//要判断的具体应用 是否是系统应用
isDefault = true;
}else
{
Log.v("====nation===","用户应用 appname= " + appInfo.packageName);
}
}
return isDefault;
}
(4)应用管理中获取全部应用
private void GetMyAPP()
{
final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
final PackageManager packageManager = this.getPackageManager();
List<ResolveInfo> allApps = packageManager.queryIntentActivities(
mainIntent, 0);
}