安卓开发获取本机所有已安装程序(形成ListView)

本文介绍如何在安卓开发中获取本机所有已安装的应用,并展示在ListView中,包括应用名称、图标和版本号。文章分享了实现这一功能的思路,包括创建APP信息类、获取应用集合的方法,以及获取程序图标的关键步骤。同时,作者提醒注意代码的解耦设计。附带一张成功实现效果的截图。
摘要由CSDN通过智能技术生成

  项目刚好需要用到这个,查询汇总了很多资料最后终于顺利解决,也积累了不少查资料的技巧,现在把思路整理一下,希望能对想做类似功能的朋友有帮,希望结交热爱移动开发的朋友。 下面切入正题!开写!

 

  之前自己写代码一个很坏的习惯就是类的互相解耦之间做的很差,一堆代码都是堆在一起的,从没考虑到规划接口,工具类。


   这里首先创建一个保存一个APP所有信息的类,包括名字,图标,版本号等。

//AllAppInfo类
class AllAppInfo {  
    private int versionCode = 0;  //版本号     
    private String appname = "";// 程序名称   
    private String packagename = "";    //包名称   
    private Drawable appicon ;//图标   
    private long lastInstal;//最后一次安装时间   
    private ProviderInfo[] provider;//供应商   
    private String InstalPath;//安装路径   
    private int flag ;  //判断是不是系统应用
    
  public int getVersionCode() {  
      return versionCode;  
  }  
    
  public void setAppicon(PackageManager packageManager) {
	// TODO Auto-generated method stub
	
}

public void setVersionCode(int versionCode) {  
      this.versionCode = versionCode;  
  }  
    
  public String getAppname() {  
      return appname;  
  }  
    
  public void setAppname(String appname) {  
      this.appname = appname;  
  }  
    
  public String getPackagename() {  
      return packagename;  
  }  
    
  public void setPackagename(String packagename) {  
      this.packagename = packagename;  
  }  
    
    
    
  public Drawable getAppicon() {  
      return appicon;  
  }  
    
  public void setAppicon(Drawable appicon) {  
      this.appicon = appicon;  
  }  

  /** 
   * @return the lastInstal 
   */  
  public long getLastInstal() {  
      return lastInstal;  
  }  

  /** 
   * @param firstInstallTime the lastInstal to set 
   */  
  public void setLastInstal(long firstInstallTime) {  
      this.lastInstal = firstInstallTime;  
  }  

  /** 
   * @return the provider 
   */  
  public ProviderInfo[] getProvider() {  
      return provider;  
  }  

  /** 
   * @param providers the provider to set 
   */  
  public v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值