1.获取应用版本号和版本名称
try {
PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), 0);
int versionCode = info.versionCode;
String versionName = info.versionName;
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
2.跳转到应用商店
private void goToMarket() {
try {
Uri uri = Uri.parse("market://details?id=" + getPackageName());
Intent intent1 = new Intent(Intent.ACTION_VIEW, uri);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent1);
} catch (Exception e) {
e.printStackTrace();
CustomToast.makeText(this, "尚未安装任何应用市场", Toast.LENGTH_SHORT).show();
}
}
3.得到手机中所有应用信息的列表
/*
* 得到手机中所有应用信息的列表
AppInfo Drawable icon String appName String packageName
*/
protected List<AppInfo> getAllAppInfos()
{
List<AppInfo> list = new ArrayList<AppInfo>();
// 得到应用的packgeManager
PackageManager packageManager = getPackageManager();
// 创建一个主界面的intent
Intent intent = new Intent();
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
// 得到包含应用信息的列表
List<ResolveInfo> ResolveInfos = packageManager.queryIntentActivities(
intent, 0);
// 遍历
for (ResolveInfo ri : ResolveInfos)
{
// 得到包名
String packageName = ri.activityInfo.packageName;
// 得到图标
Drawable icon = ri.loadIcon(packageManager);
// 得到应用名称
String appName = ri.loadLabel(packageManager).toString();
// 封装应用信息对象
AppInfo appInfo = new AppInfo(icon, appName, packageName);
// 添加到list
list.add(appInfo);
}
return list;
}