Android開發-獲取APP版本號、版本名稱和APP名稱的工具類

import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;

/**
 * Android獲取本地版本號、版本名稱和APP名稱
 * @author : 阿俊
 */
public class ApkVersionCodeUtils {

    /**
     * 獲取當前本地apk的版本
     *
     * @param mContext
     * @return
     */
    public static int getVersionCode(Context mContext) {
        int versionCode = 0;
        try {
            //獲取軟件版本號,對應AndroidManifest.xml下android:versionCode
            versionCode = mContext.getPackageManager().
                    getPackageInfo(mContext.getPackageName(), 0).versionCode;
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        return versionCode;
    }

    /**
     * 獲取版本號名稱
     *
     * @param context 上下文
     * @return
     */
    public static String getVerName(Context context) {
        String verName = "";
        try {
            verName = context.getPackageManager().
                    getPackageInfo(context.getPackageName(), 0).versionName;
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        return verName;
    }

    /**
     * 獲取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;
    }

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章