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

经常会用到 获取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;  
    }  
  
}  

 

评论 1 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

康耶

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值