Android获取包名、版本号、包名、meta-data

1、获取application中指定key的meta-data值

    public static String getApplicationMetadata(Context context,String metaDataKey) {
        ApplicationInfo info = null;
        try {
            PackageManager pm = context.getPackageManager();

            info = pm.getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA);

            return String.valueOf(info.metaData.get(metaDataKey));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

应用场景:在程序打包上线到不同的应用市场时需要给每一个apk设置不同的渠道id,打包后查看log信息是否正确。 
例如:

  <meta-data
            android:name="UMENG_CHANNEL"
            android:value="Offline" />

调用方法:PackageUtils.getApplicationMetadata(App.getInstance() 
.getContext(), "UMENG_CHANNEL")
获取到的结果就Offline 
2、获取包名

  public static String getPackageName(Context context){
        return context.getPackageName();
    }
3、获取版本名称
     public static String getVersionName(Context context){
        try {
            PackageManager manager = context.getPackageManager();
            PackageInfo info = manager.getPackageInfo(context.getPackageName(), 0);
            String version = info.versionName;
            return version;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "1.0";
    }
4、得到版本号

        public static int getVersionCode(Context context){

        try {
            PackageManager manager = context.getPackageManager();
            PackageInfo info = manager.getPackageInfo(context.getPackageName(), 0);
            int version = info.versionCode;
            return version;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return 1;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值