转载请注明出处,谢谢:http://blog.csdn.net/harryweasley/article/details/50057029

首先在看这个博客之前, 你可以先看下这个博客,http://blog.csdn.net/harryweasley/article/details/50057707

里面介绍了两种方式来获取应用程序的信息,一种是packageInfo,一种是ResolveInfo,通过packageInfo来获取应用信息,会出现一个bug,那就是如果该应用,有多个图标和名字,那么只会默认显示第一个。所以我现在用ResolveInfo来获取用户信息。

关于多个图标和名字,不理解的,可以看这篇文章。http://blog.csdn.net/harryweasley/article/details/48051565
看下图所示:

一共有四个相同包名,但是图标和名字都不同的同一个应用。

其实获得桌面上的所有应用程序信息,还是比较简单的,以下就是主要代码了,文章最后,会贴出资源。

package com.example.getlauncherapp;import java.util.List;import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ListView;public class MainActivity extends Activity {private ListView myListView;private List<ResolveInfo> resolveInfoList;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);myListView = (ListView) findViewById(R.id.listView);getLauncherApp();MyBaseAdapter adapter = new MyBaseAdapter(this, resolveInfoList);myListView.setAdapter(adapter);}/*** 获取到桌面的应用程序*/private void getLauncherApp() {// 桌面应用的启动在INTENT中需要包含ACTION_MAIN 和CATEGORY_HOME.Intent intent = new Intent();intent.addCategory(Intent.CATEGORY_LAUNCHER);intent.setAction(Intent.ACTION_MAIN);PackageManager manager = getPackageManager();resolveInfoList = manager.queryIntentActivities(intent, 0);}}

本项目的下载链接为:http://download.csdn.net/detail/harryweasley/9302849
结束。

Android获取桌面应用程序相关推荐

  1. android 获取程序,Android获取桌面应用程序

    转载请注明出处,谢谢:http://blog.csdn.net/harryweasley/article/details/50057029 首先在看这个博客之前, 你可以先看下这个博客,http:// ...

  2. Android更改桌面应用程序launcher的两种方式

     http://blog.csdn.net/mdx20072419/article/details/9632779/ launcher,也就是android的桌面应用程序.下图是我正在使用的魅族手 ...

  3. android获取运行应用程序,Android中获取正在运行的应用程序

    Android中获取正在运行的应用程序 ActivityMain.java 1.public class ActivityMain extends ListActivity { 2. @Overrid ...

  4. android 开发桌面应用程序,安卓开发基础教程-Android多界面应用程序开发

    开篇 本文阅读需10分钟,简单易上手,属于安卓开发教程的基础部分. 建议精读,深刻理解大意.多做实践.多写代码. 本文章由做全栈攻城狮原创首发. 同名公众号已开启,官网www.8z5.net. 本套教 ...

  5. Android获取桌面启动图标的位置

    Android系统默认会将用户点击的"桌面图标"的位置发送给启动页MainActivity,以此来实现某些系统的过渡动画,所以在MainActivity中调用下面的代码是可以得到当 ...

  6. rk修改launcher_Android更改桌面应用程序launcher的两种方式

    http://blog.csdn.net/mdx20072419/article/details/9632779/ launcher,也就是android的桌面应用程序.下图是我正在使用的魅族手机的l ...

  7. Android获取程序路径 (/data/data/appname)

    Android获取文件夹路径 /data/data/ http://www.2cto.com/kf/201301/186614.html String printTxtPath = getApplic ...

  8. android 获取程序名,Android_Android获取应用程序名称(ApplicationName)示例,MainActivity如下: 复制代码 代码 - phpStudy...

    Android获取应用程序名称(ApplicationName)示例 MainActivity如下: package cn.testapplicationname; import android.os ...

  9. Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)

    Android获取设备各项信息(设备id.ip地址.APP应用名称.设备名称.运行商.品牌.型号.分辨率.处理器.国家码.系统语言.网络类型.oaid.android版本.操作系统版本.mac地址.应 ...

最新文章

  1. 一文详解点云库PCL
  2. 《effective java》类和对象
  3. 【渝粤题库】陕西师范大学151210 成本会计作业 (专升本)
  4. CMD窗口的cd命令
  5. python贪吃蛇原始代码_pthon贪吃蛇游戏详细代码
  6. VSCode远程链接Could not establish connection to “hz.matpool.com”
  7. 考虑空气阻力的抛射体的matlab,考虑空气阻力的抛射体运动mtlab仿真
  8. 如何使Git使用我选择的编辑器进行提交?
  9. Python selenium 延时的几种方法
  10. zk和redis分布式锁比较
  11. perl里q,qq,qw等的用法
  12. 红外遥控(NEC协议)编程
  13. python opencv 将白色底变成透明底
  14. 微信用户与第三方网站用户的绑定策略(实现用户第一次登陆后永久免登陆)
  15. 重视论文降重,应对论文查重
  16. python爬虫--小白爬取哔哩哔哩每周更新栏目动画
  17. 简单的proxy之TinyHTTPProxy.py
  18. 如何将喜马拉雅FM的音频下载下来保存
  19. 14个步骤让你快速学会UG!
  20. 力扣13 罗马数字转整数逻辑详解

热门文章

  1. 手环的PCBA部分,主要包括一颗集成BLE功能的MCU,以及由MCU控制的各种外设
  2. Win10 安装node.js
  3. Krita开发文档翻译——Introduction to Hacking Krita
  4. 使用Java编写爬虫,下载百度图片
  5. Apache httpd 几个报错的解决记录
  6. 【数据报表中心】强大的迈安2019年大数据分析有哪些工具
  7. epub文件是什么文件?如何用安卓手机打开?
  8. thinkpad E450/550 预装系统改装WIN7全套教程
  9. 在虚拟机linux系统中安装与配置jdk
  10. 有没有免费的数据恢复软件,easyrecovery中文版