`
panxq0809
  • 浏览: 296837 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

获取系统内Applications的基本信息

 
阅读更多

在这个例子中将展示如何获取Application的几个基本属性信息:名字、Package标签、版本信息和图标信息。
创建一个用于存储基本信息的Class:

class PInfo {  


     private String appname = "";  

     private String pname = "";  

     private String versionName = "";  

     private int versionCode = 0;  

     private Drawable icon;  

     private void prettyPrint() {  

         log(appname + "t" + pname + "t" + versionName + "t" + versionCode + "t");  

     }  

 } 

 

接下来是获取信息的主体:

private ArrayList < PInfo > getInstalledApps(boolean getSysPackages) {  

    ArrayList < PInfo > res = new ArrayList < PInfo > ();  

     List < PackageInfo > packs = getPackageManager().getInstalledPackages(0);  

     for(int i=0;i < packs.size();i++) {  

         PackageInfo p = packs.get(i);  

         if ((!getSysPackages) && (p.versionName == null)) {  

             continue ;  

         }  

        PInfo newInfo = new PInfo();  

        newInfo.appname = p.applicationInfo.loadLabel(getPackageManager()).toString();  

         newInfo.pname = p.packageName;  

        newInfo.versionName = p.versionName;  

        newInfo.versionCode = p.versionCode;  

        newInfo.icon = p.applicationInfo.loadIcon(getPackageManager());  

         res.add(newInfo);  

     }  

    return res;  

 } 

 

用这个方法来获取系统内所包含的Applications信息:

private void listPackages() {  

    ArrayList < PInfo > apps = getInstalledApps(false); /* false = no system packages */ 

    final int max = apps.size();  

    for (int i=0; i < max; i++) {  

        apps.get(i).prettyPrint();  

    }  

 } 

 

还有一个相对比较简单的应用,借由PackageManager来获取Application信息:

PackageManager manager = this.getPackageManager();  

 try {      

    PackageInfo info = manager.getPackageInfo(this.getPackageName(), 0);  

    String packageName = info.packageName;  

    int versionCode = info.versionCode;  

   String versionName = info.versionName;    
    

 } catch (NameNotFoundException e) {  

    // TODO Auto-generated catch block  

 } 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    安卓Android源码——获取系统程序信息.zip

    6. **源码实现**:这份压缩包内的`ApplicationList`很可能是一个Java类,它实现了上述的一些或全部方法,用于从不同途径获取系统程序信息。通过阅读和理解源码,我们可以学习如何在实际项目中复用或改进这种方法。 ...

    Android获取系统已安装应用开发

    这就是一个基本的获取系统已安装应用并用自定义ListView展示的实现。你可以在APP_demo项目中找到完整的源代码,包括布局文件、适配器类以及Activity的实现。通过这个实例,你可以学习到如何使用Android的系统服务、...

    安卓调用系统闹钟及获取所有软件信息

    以上就是安卓调用系统闹钟和获取所有软件信息的基本操作。在实际开发中,这些功能可能需要结合具体需求进行调整和优化,如设置不同类型的闹钟(一次性、周期性)或根据特定条件筛选应用等。对于压缩包中的`cf_Alarm...

    Android获取Android系统程序信息.rar

    以下是一些使用PackageManager获取系统程序信息的基本步骤: 1. 获取PackageManager实例: ```java PackageManager pm = getPackageManager(); ``` 2. 获取所有已安装应用的列表: ```java List&lt;ApplicationInfo&gt; ...

    Android获取Android系统程序信息.zip

    这个方法返回一个`ApplicationInfo`对象列表,每个对象包含了应用程序的基本信息,如包名、名称、图标、版本号等。 2. 获取特定应用的信息: ```java PackageInfo packageInfo = packageManager.getPackageInfo...

    获取app信息列表

    下面是一段基本的代码示例,展示了如何获取所有应用的信息: ```java PackageManager packageManager = getApplicationContext().getPackageManager(); List&lt;ApplicationInfo&gt; installedApps = packageManager.get...

    android 获取手机中所有安装程序的信息

    `getInstalledApplications()`方法返回一个`ApplicationInfo`对象的列表,每个`ApplicationInfo`对象包含了应用程序的基本信息,如包名、名称、图标、版本号等。 接下来,为了在ListView中展示这些信息,我们需要...

    安卓Android源码——精典源码之获取系统程序信息.zip

    这个压缩包"安卓Android源码——精典源码之获取系统程序信息.zip"显然包含了一段用于获取系统程序信息的源代码,名为"ApplicationList"。这篇文章将深入探讨这个主题,详细解释如何在Android系统中获取应用信息,...

    Android应用源码之获取系统程序信息.zip

    除了获取基本信息,还可以通过`PackageManager`获取应用的权限、服务、活动、接收器等组件信息。例如,`packageInfo.gservicesFlags`可以检查应用是否关联了Google Play服务,`packageInfo.applicationInfo`包含了...

    Android开发之系统信息【4】——获取Android已安装程序列表

    这里主要介绍`getInstalledApplications()`方法,因为它返回的是一个`List&lt;ApplicationInfo&gt;`对象,其中包含了所有已安装应用的基本信息。 ```java List&lt;ApplicationInfo&gt; installedApplications = ...

    获得系统的信息硬盘显示器内存.zip_获得系统信息

    3. **VBScript和VBA**:在VBScript和Visual Basic for Applications(VBA)中,可以利用WMI来编写脚本或宏获取系统信息。例如,`CreateObject("WbemScripting.SWbemLocator")`创建一个WMI连接,然后调用`...

    PACS and Imaging Informatics Basic Principles and Applications

    在医学影像信息学的范畴内,PACS(Picture Archiving and Communication System,图像存储与传输系统)扮演着至关重要的角色。它是一个医疗影像信息系统,用于获取、存储、分发和显示各种医学影像。PACS系统通过数字...

    android获取手机应用信息

    在Android平台上,获取手机应用信息是一项常见的任务,这通常涉及到读取系统中的应用程序列表,包括应用的名称、图标、包名、版本号等信息。在Android开发中,我们可以使用Android提供的Content Provider和...

    安卓闹钟相关-安卓调用系统闹钟及获取所有软件信息.zip

    在安卓平台上,调用系统闹钟以及获取所有应用程序信息是两个常见的需求,这对于开发者来说尤其重要,无论是构建日程管理应用还是进行系统分析。在这个"安卓闹钟相关-安卓调用系统闹钟及获取所有软件信息.zip"压缩包...

    Android应用源码之安卓调用系统闹钟及获取所有软件信息.zip

    在Android应用开发中,开发者经常需要与系统的各种服务进行交互,比如设置闹钟或获取设备上的应用程序信息。这个"Android应用源码之安卓调用系统闹钟及获取所有软件信息.zip"压缩包就包含了实现这些功能的源代码示例...

    安卓开发-安卓调用系统闹钟及获取所有软件信息.zip.zip

    在安卓开发中,调用系统闹钟和获取所有软件信息是两个重要的功能点。下面将分别详细介绍这两个主题。 首先,让我们来探讨如何在Android平台上设置和管理系统闹钟。在Android中,我们可以使用AlarmManager服务来实现...

    应用源码之安卓调用系统闹钟及获取所有软件信息.zip

    在Android开发中,调用系统闹钟以及获取所有软件信息是常见的功能需求。这份压缩包文件"应用源码之安卓调用系统闹钟及获取所有软件信息.zip"提供了相关的源码示例,可以帮助开发者深入理解这两个功能的实现原理。...

    Android 安卓调用系统闹钟及获取所有软件信息-IT计算机-毕业设计.zip

    注意,GET_META_DATA标志可以获取到应用的元数据,如果只需要基本信息,可以去掉这个标志。 在实际开发中,这些信息可以用来构建应用列表,或者根据包名启动特定的应用程序。为了展示更多信息,还可以通过包名获取...

    客户管理系统-客户信息采集系统 (1).rar

    1. 数据表设计:合理规划表格结构,包括客户基本信息、交易记录、联系方式等字段。 2. 数据操作:使用Excel的公式和函数进行数据计算,如计算客户的总消费额或平均购买频率。 3. 数据分析:利用Excel的数据透视表...

Global site tag (gtag.js) - Google Analytics