使用包管理器
package com.liunan.myfirstapp.util;import android.content.Context;import android.content.pm.ApplicationInfo;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;/** * Created by 刘楠 on 2016-03-22. */public class PackageUtils { /** * 获取版本名称 * @param context 上下文 * @return 版本名称 */ public static String getVersionName(Context context){ //获取包管理器 PackageManager pm = context.getPackageManager(); //获取包信息 try { PackageInfo packageInfo = pm.getPackageInfo(context.getPackageName(),0); //返回版本号 return packageInfo.versionName; } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } return null; } /** * 获取版本号 * @param context 上下文 * @return 版本号 */ public static int getVersionCode(Context context){ //获取包管理器 PackageManager pm = context.getPackageManager(); //获取包信息 try { PackageInfo packageInfo = pm.getPackageInfo(context.getPackageName(),0); //返回版本号 return packageInfo.versionCode; } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } return 0; } /** * 获取App的名称 * @param context 上下文 * @return 名称 */ public static String getAppName(Context context){ PackageManager pm = context.getPackageManager(); //获取包信息 try { PackageInfo packageInfo = pm.getPackageInfo(context.getPackageName(),0); //获取应用 信息 ApplicationInfo applicationInfo = packageInfo.applicationInfo; //获取albelRes int labelRes = applicationInfo.labelRes; //返回App的名称 return context.getResources().getString(labelRes); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } return null; }}