介绍
如何在android中获取本机其他应用的版本信息吗?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
先建一个实体类,用来存放应用信息。
package com.zznode.bean; import android.graphics.drawable.Drawable; import android.util.Log;/* * ,* Created by 杰梵,提醒2017/9/25。 ,*用来存取应用的信息。 ,*/public class  AppInfo { public 才能String appName =,““ public 才能String packageName =,““ public 才能String versionName =,““ public 才能int versionCode =, 0; public 才能Drawable appIcon =,空; public 才能;void print () { ,,,Log.v (“app",“名字:“+浏览器名称+“,包:“+ packageName); ,,,Log.v (“app",“名字:“+浏览器名称+“,versionName:“+ versionName); ,,,Log.v (“app",“名字:“+浏览器名称+“,versionCode:“+ versionCode); ,,} }
下面是我写的一个方法,可以选择获取手机安装的所有应用的信息,你也可以单独选择获取单独系统应用的信息,或者是非系统应用的信息。
/* * ,,* ,,*,@param sign 1,本机全部应用的信息,2,系统应用的信息,3,非系统应用的信息 ,,*,@return 应用的信息 ,,*/public 才能;List< AppInfo>, getAppInfo (int 标志),{ ,,,List, appList =, new ArrayList ();,//用来存储获取的应用信息数据 ,,,List , packages =, getPackageManager () .getInstalledPackages (0); ,,,for (int 小姐:=,0;,小姐:& lt;, packages.size();,我+ +),{ ,,,,,PackageInfo PackageInfo =, packages.get(我); ,,,,,AppInfo tmpInfo =, new AppInfo (); ,,,,,tmpInfo.appName =, packageInfo.applicationInfo.loadLabel (getPackageManager ()) .toString (); ,,,,,tmpInfo.packageName =, packageInfo.packageName; ,,,,,tmpInfo.versionName =, packageInfo.versionName; ,,,,,tmpInfo.versionCode =, packageInfo.versionCode; ,,,,,tmpInfo.appIcon =, packageInfo.applicationInfo.loadIcon (getPackageManager ()); ,,,,,if (==sign 1),{//全手机全部应用 ,,,,,,,appList.add (tmpInfo); ,,,,,},else if (==sign 2), { ,,,,,,,if ((packageInfo.applicationInfo.flags ,, ApplicationInfo.FLAG_SYSTEM),==, 0), { ,,,,,,,,,appList.add (tmpInfo);//如果非系统应用,则添加至appList ,,,,,,,} ,,,,,},else if (==sign 3), { ,,,,,,,if ((packageInfo.applicationInfo.flags ,, ApplicationInfo.FLAG_SYSTEM), !=, 0), { ,,,,,,,,,appList.add (tmpInfo);//如果非系统应用,则添加至appList ,,,,,,,} ,,,,,} ,,,} ,,,return appList; 以前,,}> 看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
如何在android中获取本机其他应用的版本信息