概述
简单使用方式
public void checkAPKIsExists(Context context, String downloadPath) {
File file = new File(downloadPath);
boolean result = false;
if (file.exists()) {
PackageManager pm = context.getPackageManager();
PackageInfo info = pm.getPackageArchiveInfo(downloadPath, PackageManager.GET_ACTIVITIES);
if (info != null){
info.versionCode;//获取版本号
info.versionName;//获取版本名
info.packageName;//获取包名
}
}
第二个参数:
/**
* {@link PackageInfo} flag: return information about
* activities in the package in {@link PackageInfo#activities}.
*/
public static final int GET_ACTIVITIES = 0x00000001;
/**
* {@link PackageInfo} flag: return information about
* intent receivers in the package in
* {@link PackageInfo#receivers}.
*/
public static final int GET_RECEIVERS = 0x00000002;
/**
* {@link PackageInfo} flag: return information about
* services in the package in {@link PackageInfo#services}.
*/
public static final int GET_SERVICES = 0x00000004;
/**
* {@link PackageInfo} flag: return information about
* content providers in the package in
* {@link PackageInfo#providers}.
*/
public static final int GET_PROVIDERS = 0x00000008;
/**
* {@link PackageInfo} flag: return information about
* instrumentation in the package in
* {@link PackageInfo#instrumentation}.
*/
public static final int GET_INSTRUMENTATION = 0x00000010;
/**
* {@link PackageInfo} flag: return information about the
* intent filters supported by the activity.
*/
public static final int GET_INTENT_FILTERS = 0x00000020;
/**
* {@link PackageInfo} flag: return information about the
* signatures included in the package.
*/
public static final int GET_SIGNATURES = 0x00000040;
/**
* {@link ResolveInfo} flag: return the IntentFilter that
* was matched for a particular ResolveInfo in
* {@link ResolveInfo#filter}.
*/
public static final int GET_RESOLVED_FILTER = 0x00000040;
/**
* {@link ComponentInfo} flag: return the {@link ComponentInfo#metaData}
* data {@link android.os.Bundle}s that are associated with a component.
* This applies for any API returning a ComponentInfo subclass.
*/
public static final int GET_META_DATA = 0x00000080;
通过这个参数可以获取包括四大组件在内的信息,之后就可以利用PackageInfo获取信息。
最后
以上就是大胆鼠标为你收集整理的读取本地APK文件的PackageInfo等信息简单使用方式的全部内容,希望文章能够帮你解决读取本地APK文件的PackageInfo等信息简单使用方式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复