android studio根据包名获取当前安装包信息

复制代码
package com.example.myapplication2;

import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.util.Log;

/***
 * 获取版本信息
 */
public class SystemHelper {
    /**
     * 获取本地软件版本号
     */
    public static int getLocalVersion(Context context) {
        int localVersion = 0;
        try {
            PackageInfo packageInfo = context.getApplicationContext()
                    .getPackageManager()
                    .getPackageInfo(context.getPackageName(), 0);
            localVersion = packageInfo.versionCode;
            Log.d("当前版本号:" , String.valueOf(localVersion));
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        return localVersion;
    }


    /**
     * 获取本地软件版本号名称
     */
    public static String getLocalVersionName(Context context) {
        String localVersion = "";
        try {
            PackageInfo packageInfo = context.getApplicationContext()
                    .getPackageManager()
                    .getPackageInfo(context.getPackageName(), 0);
            localVersion = packageInfo.versionName;
            Log.d("当前版本名称:", localVersion);
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        return localVersion;
    }


}

activity中使用

复制代码
Context context = getApplicationContext();
SystemHelper.getLocalVersion(context);
SystemHelper.getLocalVersionName(context);
相关推荐
木叶丸29 分钟前
跨平台方案该如何选择?
android·前端·ios
顾林海1 小时前
Android ClassLoader加载机制详解
android·面试·源码
用户2018792831671 小时前
🎨 童话:Android画布王国的奇妙冒险
android
whysqwhw2 小时前
OkHttp框架的全面深入架构分析
android
你过来啊你2 小时前
Android App冷启动流程详解
android
kiss strong2 小时前
好用的自带AI功能的国产IDE
ide
泓博2 小时前
KMP(Kotlin Multiplatform)改造(Android/iOS)老项目
android·ios·kotlin
移动开发者1号3 小时前
使用Baseline Profile提升Android应用启动速度的终极指南
android·kotlin
移动开发者1号3 小时前
解析 Android Doze 模式与唤醒对齐
android·kotlin
菠萝加点糖5 小时前
Kotlin Data包含ByteArray类型
android·开发语言·kotlin