`
emowuyi
  • 浏览: 1478978 次
文章分类
社区版块
存档分类
最新评论

Android 获得所有应用程序包

 
阅读更多
推荐方法
1、 <wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>//全部程序包</wbr></wbr>
private void queryFilterAppInfo() { <wbr></wbr>
PackageManager pm = this.getPackageManager(); <wbr></wbr>
// 查询所有已经安装的应用程序 <wbr></wbr>
List<ApplicationInfo> listAppcations = pm.getInstalledApplications<wbr>(<span style="word-wrap:normal; word-break:normal; line-height:23.33333396911621px">PackageManager.</span>GET_UNINSTALLED_PACKAGES);//<wbr><span style="word-wrap:normal; word-break:normal; line-height:23.33333396911621px">GET_UNINSTALLED_PACKAGES代表已删除,但还有安装目录的</span></wbr></wbr>

for (ApplicationInfo app : listAppcations) { <wbr></wbr>
AppInfo appInfo = new AppInfo(); <wbr></wbr>
appInfo.setAppLabel((String) app.loadLabel(pm)); <wbr></wbr>
appInfo.setAppIcon(app.loadIcon(pm)); <wbr></wbr>
appInfo.setPkgName(app.packageName);
mlistAppInfo.add(appInfo); <wbr><wbr></wbr></wbr>
} <wbr></wbr>
<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>}<wbr></wbr></wbr></wbr>
<wbr><wbr></wbr></wbr>

2、 <wbr><wbr></wbr></wbr>
<wbr><wbr>// 获得所有系统的</wbr></wbr>
public void querySysAppInfo() { <wbr></wbr>
PackageManager pm = this.getPackageManager();
Intent intent = new Intent(Intent.ACTION_MAIN, null); <wbr></wbr>
intent.addCategory(Intent.CATEGORY_LAUNCHER); <wbr></wbr>
// 通过查询,获得所有ResolveInfo对象. <wbr></wbr>
List<ResolveInfo> resolveInfos = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); <wbr></wbr>
<wbr></wbr>
for (ResolveInfo reInfo : resolveInfos) { <wbr></wbr>
String activityName = reInfo.activityInfo.name; // 获得该应用程序的启动Activity的name <wbr></wbr>
String pkgName = reInfo.activityInfo.packageName; // 获得应用程序的包名 <wbr></wbr>
String appLabel = (String) reInfo.loadLabel(pm); // 获得应用程序的Label <wbr></wbr>
Drawable icon = reInfo.loadIcon(pm); // 获得应用程序图标 <wbr></wbr>
System.out.println(appLabel + " activityName---" + activityName <wbr></wbr>
+ " pkgName---" + pkgName);<wbr></wbr>

} <wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr>
<wbr><wbr>}<wbr></wbr></wbr></wbr>

3、 <wbr><wbr>//最简单的方法 <wbr><wbr></wbr></wbr></wbr></wbr>
public <wbr>boolean appIsInstalled(String packageName){</wbr>
try {
PackageManager pm = this.getPackageManager();
pm.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
System.out.println("已安装"+packageName);
} catch (NameNotFoundException e) {
System.out.println("没有安装"+packageName);
return false;
}
return true;
}

4、//<wbr>获得所有包信息</wbr>
<wbr><wbr></wbr></wbr>
public void getInstallPackage() {
PackageManager packageManager = this.getPackageManager();
List<PackageInfo> <wbr><wbr><wbr><wbr>packageInfoList=packageManager.getInstalledPackages(0);</wbr></wbr></wbr></wbr>
mlistAppInfo.clear(); <wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>for (int i=0;i&lt;packageInfoList.size();i++) {<wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>PackageInfo pi = packageInfoList.get(i);</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>System.out.println((i+1)+":"+pi.toString());</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr>} <wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
}

5、 <wbr><wbr><wbr><wbr>//直接启动方法</wbr></wbr></wbr></wbr>
public <wbr>void srartApp(String packageName){</wbr>
<wbr><wbr>Intent intent = this.getPackageManager().getLaunchIntentForPackag<wbr>e(packageName);</wbr></wbr></wbr>
<wbr><wbr>if(intent!=null)</wbr></wbr>
<wbr><wbr>//已安装包 直接启动</wbr></wbr>
<wbr><wbr>startActivity(intent);</wbr></wbr>
}
分享到:
评论

相关推荐

    Android应用程序开发教程PDF电子书完整版、Android开发学习教程

    Android 会同一系列核心应用程序包一起发布,该应用程序包包括 email 客户端, SMS 短消息程序,日历, 地图,浏览器,联系人管理程序等。所有的应用程序都是使用 JAVA 语言编写的。 应用程序框架 开发人员也可以...

    Android移动应用开发(第3版)卷Ⅰ基础篇 (Shane Conder, Lauren Darcey) PDF扫描版

     《Android移动应用开发(第3版)卷Ⅰ:基础篇》涵盖了Android开发从概念、技术到市场推广应用的全部主题,内容包括Android平台概览、Android应用程序设计精髓、Android用户界面设计精髓、Android应用程序设计精髓、...

    Android中应用程序获得系统签名权限(platform.x509.pem platform.pk8 signapk.jar)

    用于获取Android程序的系统权限包含文件platform.x509.pem platform.pk8 signapk.jar 经过测试简单,好用

    Android程序设计基础

     作为基于Linux的开源手机平台,Android包括一部手机工作所需的全部软件——操作系统、用户界面和应用程序,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌公司与开放手机联盟合作开发了Android,这个联盟...

    《Android应用开发揭秘》附带光盘代码.

     1.1.3 Android应用程序框架  1.2 OMS介绍  1.2.1 OPhone介绍  1.2.2 Widget介绍  1.3 小结  第2章 Android开发环境搭建  2.1 Android开发准备工作  2.2 开发包及其工具的安装和  配置  2.2.1 安装JDK和...

    Android高级编程--源代码

     本书面向希望在android手机平台上创建应用程序的所有人员。不管是经验丰富的移动开发人员,还是初出茅庐的新手,都能从本书提供的宝贵信息中获益。 作译者  Reto Meier出生于澳大利西南的珀斯市,现居伦敦。 ...

    Android应用开发揭秘(pdf )

     和以其为首的Android手机联盟的大力支持和推广下,Android不仅得到了全球开发者社区的关注,而且一大批世界一流  的手机厂商都已经或准备采用Android。  拥抱Android开发。拥抱移动开发的未来!  如果你在思考...

    《Android应用开发揭秘》源码

     1.1.3 Android应用程序框架  1.2 OMS介绍  1.2.1 OPhone介绍  1.2.2 Widget介绍  1.3 小结  第2章 Android开发环境搭建  2.1 Android开发准备工作  2.2 开发包及其工具的安装和配置  2.2.1 安装JDK和配置...

    packageManager得到系统应用包名打开应用程序

    可根据包名打开系统的应用程序【直接下载,解压后倒入eclipse里面即可使用,使用ListView展示,可看到应用名包名,点击可打开】

    Android应用开发入门教程

    第二篇 Android应用程序的概述和框架36 第3章 Android应用层程序的开发方式36 3.1 应用程序开发的结构36 3.2 API参考文档的使用36 第4章Android应用程序示例40 4.1 HelloActivity程序的运行40 4.2 HelloActivity的...

    Restorder(Android)v1.3 -一个单一的餐厅点餐应用程序Java项目源码

    Restorder是一个Android应用程序,餐厅老板向用户显示菜单,用户可以使用用户友好的应用程序订购食物。 安卓端 有吸引力的UI与材料设计 注册并登录/忘记密码/Facebook和Google登录 食品菜单与类别 食品价格和描述 ...

    Android应用开发揭秘pdf高清版

    1.1.3 Android应用程序框架 1.2 OMS介绍 1.2.1 OPhone介绍 1.2.2 Widget介绍 1.3 小结 第2章 Android开发环境搭建 2.1 Android开发准备工作 2.2 开发包及其工具的安装和 配置 2.2.1 安装JDK和配置Java开发 环境 ...

    Android-SMS-Application:简单的Android应用程序,用于管理联系人以及发送和接收SMS

    Android-SMS-应用程序 这是我为学生创建的项目,并在我42岁的学习期间得到了教学团队的验证。 该主题的目的是通过创建一个用于管理联系人,发送和接收SMS的应用程序,使学生熟悉Android系统。 主题 介绍 对于此项目...

    eoeAndroid特刊第三期:Android+Market及应用发布 pdf

    这一平台最大的特点就在于,所有的开发者注册后都可以上传内容,而所有上传的内容都会能够立刻在Android Market上找到,这改变了以往只能通过付费获得内容的方式,为了让开发者更好、更直接全面的了解Android Market...

    Android期末复习题01

    1、Intent的Component属性的作用是什么,如何定义此属性?...每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念。

    基于Java的Android应用程序开发-24点游戏源码+详细项目说明.zip

    基于Java的Android应用程序开发-24点游戏源码+详细项目说明.zip 基于Java的Android应用程序开发-24点游戏源码+详细项目说明.zip 基于Java的Android应用程序开发-24点游戏源码+详细项目说明.zip 【项目介绍】 该资源...

    Android获取应用程序大小的方法

    今天碰到个问题,想获取某个已安装的包的大小... 再后来,我想起系统的设置里面有一个应用程序管理,它里面列出了所有程序的占用空间大小、数据大小和缓存大小。恩,这个就是突破口。以前写过一篇获取其他包的Context

    《Android系统源代码情景分析》

    1.2 Android应用程序参考书籍 1.3 下载、编译和运行Android源代码 1.3.1 下载Android源代码 1.3.2 编译Android源代码 1.3.3 运行Android模拟器 1.4 下载、编译和运行Android内核源代码 1.4.1 下载...

Global site tag (gtag.js) - Google Analytics