获取手机中所有应用的包名与权限以及当前应用的版本号
2015-11-24 00:00
429 查看
【第一个问题获取手机中所有应用的包名与权限】
有时候你的App需要跳转到其他的App,你需要知道他的包名,最简单的方法就是通过Android自带的方法去获取了。一般的包名都是能够一眼看出来的,要么是应用名的拼音,要么就是英文了。代码如下:
【第二个问题获取当前应用的版本号】
一般的应用都会在“关于我们”的界面中展示下当前应用的版本号以及build号。展示的第一步是先设置:
Android Studio是在build.gradle中设置:
获取的方法也很简单,代码如下:
有时候你的App需要跳转到其他的App,你需要知道他的包名,最简单的方法就是通过Android自带的方法去获取了。一般的包名都是能够一眼看出来的,要么是应用名的拼音,要么就是英文了。代码如下:
PackageManager pm = getPackageManager(); List<PackageInfo> installedPackages = pm.getInstalledPackages(PackageManager.GET_PERMISSIONS); for (PackageInfo info : installedPackages) { System.out.println("包名:" + info.packageName); String[] requestedPermissions = info.requestedPermissions; if(requestedPermissions == null) continue; for (String requestedPermission : requestedPermissions) { System.out.println("权限:" + requestedPermission); } }
【第二个问题获取当前应用的版本号】
一般的应用都会在“关于我们”的界面中展示下当前应用的版本号以及build号。展示的第一步是先设置:
Android Studio是在build.gradle中设置:
defaultConfig { applicationId "xxx.xxxx.xxxxx" minSdkVersion 14 targetSdkVersion 22 versionCode 10000 versionName "1.0.0" multiDexEnabled true }versionName就是版本号;versionCode就用作build号
获取的方法也很简单,代码如下:
try { PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), 0);//查找当应用的包信息 String versionInfo = "版本号:" + info.versionName + ",build号:" + info.versionCode; } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); }
相关文章推荐
- Universal-Image-Loader设置图片大小
- 免费api接口-基金状态暂停接口
- 360新闻api,通过关键字检索最新新闻动态
- 二进制安全
- 一个Office Professional Plus 2010可联网激活密钥
- 设计模式----组合模式UML和实现代码
- 设计模式----桥接模式UML和实现代码
- Spring MVC拦截器+注解方式实现防止表单重复提交
- spring ORM管理
- mybatis 的select in
- Oracle DECODE函数的用法详解
- IOS 正则表达式
- " #import <库名>" “#import '类名.h 区别
- 个人收集的iOS开源项目与框架
- 几个老爱忘记的html标签
- AngularJS,为什么我们要使用$apply()?在什么时候使用?
- 每一天,程序员是怎么过得?
- [C/C++][文件操作] 对比目录并列出同名较新文件、较旧文件 0.1
- python中动态变量创建
- Java 泛型方法 泛型容器生成工具类