Android获取APP的应用程序名称、包名、图标,版本号基本信息

来源:互联网 发布:第一版主网最新域名 编辑:程序博客网 时间:2024/05/19 19:13

经常会用到 获取App信息,可以用这个工具类,可以获得 APP的应用程序名称、包名、图标,版本号基本信息

/跟App相关的辅助类public class AppUtils {    /**     * 获取应用程序名称     */    public static synchronized String getAppName(Context context) {        try {            PackageManager packageManager = context.getPackageManager();            PackageInfo packageInfo = packageManager.getPackageInfo(                    context.getPackageName(), 0);            int labelRes = packageInfo.applicationInfo.labelRes;            return context.getResources().getString(labelRes);        } catch (Exception e) {            e.printStackTrace();        }        return null;    }    /**     * [获取应用程序版本名称信息]     * @param context     * @return 当前应用的版本名称     */    public static synchronized String getVersionName(Context context) {        try {            PackageManager packageManager = context.getPackageManager();            PackageInfo packageInfo = packageManager.getPackageInfo(                    context.getPackageName(), 0);            return packageInfo.versionName;        } catch (Exception e) {            e.printStackTrace();        }        return null;    }    /**     * [获取应用程序版本名称信息]     * @param context     * @return 当前应用的版本名称     */    public static synchronized int getVersionCode(Context context) {        try {            PackageManager packageManager = context.getPackageManager();            PackageInfo packageInfo = packageManager.getPackageInfo(                    context.getPackageName(), 0);            return packageInfo.versionCode;        } catch (Exception e) {            e.printStackTrace();        }        return 0;    }    /**     * [获取应用程序版本名称信息]     * @param context     * @return 当前应用的版本名称     */    public static synchronized String getPackageName(Context context) {        try {            PackageManager packageManager = context.getPackageManager();            PackageInfo packageInfo = packageManager.getPackageInfo(                    context.getPackageName(), 0);            return packageInfo.packageName;        } catch (Exception e) {            e.printStackTrace();        }        return null;    }    /**     * 获取图标 bitmap     * @param context     */    public static synchronized Bitmap getBitmap(Context context) {        PackageManager packageManager = null;        ApplicationInfo applicationInfo = null;        try {            packageManager = context.getApplicationContext()                    .getPackageManager();            applicationInfo = packageManager.getApplicationInfo(                    context.getPackageName(), 0);        } catch (PackageManager.NameNotFoundException e) {            applicationInfo = null;        }        Drawable d = packageManager.getApplicationIcon(applicationInfo); //xxx根据自己的情况获取drawable        BitmapDrawable bd = (BitmapDrawable) d;        Bitmap bm = bd.getBitmap();        return bm;    }}





阅读全文
0 0