获取本应用的本地版本名称

参考:点击打开链接

使用包管理者对象PackageManager获取

Android系统为我们提供了很多服务管理的类,包括ActivityManager、PowerManager(电源管理)、AudioManager(音频管理)等。除此之外,还提供了一个PackageManger管理类,它的主要职责是管理应用程序包。 通过PackageManager,我们就可以获取应用程序信息。

AndroidManifest.XML文件是Android程序的全局配置文件,PackageManager获取的信息即来自AndroidManifest.XML。

一、PackageManager的功能:

1、安装,卸载应用
2、查询permission相关信息
3、查询Application相关信息(application,activity,receiver,service,provider及相应属性等)
4、查询已安装应用
5、增加,删除permission

6、清除用户数据、缓存,代码段等 

二、 方法

说明: 获得已安装的应用程序信息 。可以通过getPackageManager()方法获得。 

常用方法: 
public abstract PackageManager getPackageManager()  
功能:获得一个PackageManger对象  

getPackageInfo();

public abstract PackageInfo getPackageInfo(String packageName, int flags)根据包名获取对应的PackageInfo

两个参数:1、包名-getPackageName  2、传0代表获取基本信息    

常见字段:   
(1)、public String packageName;包名    
(2)、public String[] splitNames;   
(3)、public int versionCode;版本号     
(4)、public String versionName;版本名称    
(5)、public ApplicationInfo applicationInfo;    
(6)、public long firstInstallTime;第一次安装时间   
(7)、public long lastUpdateTime;上次更新时间     
(8)、public ActivityInfo[] activities;所有的Activity信息     
(9)、public ActivityInfo[] receivers; 所有的广播接收者    
(10)、public ServiceInfo[] services;所有的服务信息     
(11)、public ProviderInfo[] providers;获取ContentProvide     
(12)、public PermissionInfo[] permissions;所有的权限信息

三、例如,获取本地的版本名称

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String versionName = getVersionName();
        Log.i("版本名称:",versionName);
    }

    public String  getVersionName() {
        //[1]获取包管理者对象 packageManager
        PackageManager pm = getPackageManager();
        try {
            //[2]从包管理者对象中获取指定包名的基本信息
            PackageInfo packageInfo = pm.getPackageInfo(getPackageName(), 0);
            //[3]获取版本名称,并返回
            return packageInfo.versionName;

        }catch (Exception e){
            e.printStackTrace();
        }
        return null;
    }

运行结果:

03-18 17:45:30.066 14055-14055/mobilesafe.itcast.com.demo001 I/版本名称:: 1.0

注意:android studio更改应用版本名称和版本号不是在清单文件中,而是在build.gradle中

获取本应用的本地版本名称_第1张图片


你可能感兴趣的:(android,android)