当前位置: 首页 > 编程笔记 >

java实现获取安卓设备里已安装的软件包

澹台胜
2023-03-14
本文向大家介绍java实现获取安卓设备里已安装的软件包,包括了java实现获取安卓设备里已安装的软件包的使用技巧和注意事项,需要的朋友参考一下

之前的文章向大家介绍了几个项目中常用的实用功能,那么在这篇文中,我将向大家介绍如何获取Android手机中已经安装的手机应用程序,好了,废话不多说,直接上代码

private String getInstalledAppListAsString(){
    PackageManager pm = context.getPackageManager();
    List<ApplicationInfo> apps = pm.getInstalledApplications(PackageManager.GET_GIDS);
    StringBuffer stringBuffer = new StringBuffer();
    for (ApplicationInfo app : apps) {
      if(pm.getLaunchIntentForPackage(app.packageName) != null) {
        // apps with launcher intent
        if((app.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) == 1) {
          // updated system apps
 
        } else if ((app.flags & ApplicationInfo.FLAG_SYSTEM) == 1) {
          // system apps
 
        } else {
          // user installed apps
          stringBuffer.append(app.packageName).append(';');
        }
      }
    }
    return stringBuffer.toString();
  }

下面我们看看具体如何获取各个应用的相关信息呢

package cn.lyz.mobilesafe.domain;

import android.graphics.drawable.Drawable;

/**
 * 获取的应用基本信息实体类
 * @author liuyazhuang
 *
 */
public class AppInfo {
	//图标
	private Drawable app_icon;
	//应用名称
	private String app_name;
	//应用版本号
	private String app_version;
	//应用包名
	private String packagename;
	//是否是用户app
	private boolean isUserApp;
	
	
	public AppInfo() {
		super();
		// TODO Auto-generated constructor stub
	}
	public AppInfo(Drawable app_icon, String app_name, String app_version,
			String packagename) {
		super();
		this.app_icon = app_icon;
		this.app_name = app_name;
		this.app_version = app_version;
		this.packagename = packagename;
	}
	
	
	public AppInfo(Drawable app_icon, String app_name, String app_version,
			String packagename, boolean isUserApp) {
		super();
		this.app_icon = app_icon;
		this.app_name = app_name;
		this.app_version = app_version;
		this.packagename = packagename;
		this.isUserApp = isUserApp;
	}
	public Drawable getApp_icon() {
		return app_icon;
	}
	public void setApp_icon(Drawable app_icon) {
		this.app_icon = app_icon;
	}
	public String getApp_name() {
		return app_name;
	}
	public void setApp_name(String app_name) {
		this.app_name = app_name;
	}
	public String getApp_version() {
		return app_version;
	}
	public void setApp_version(String app_version) {
		this.app_version = app_version;
	}
	public String getPackagename() {
		return packagename;
	}
	public void setPackagename(String packagename) {
		this.packagename = packagename;
	}
	
	public boolean isUserApp() {
		return isUserApp;
	}
	public void setUserApp(boolean isUserApp) {
		this.isUserApp = isUserApp;
	}
	
	@Override
	public String toString() {
		return "AppInfo [app_icon=" + app_icon + ", app_name=" + app_name
				+ ", app_version=" + app_version + ", packagename="
				+ packagename + ", isUserApp=" + isUserApp + "]";
	}
}
 类似资料:
  • 问题内容: 我已经获得运行指示,该指示似乎可以成功运行,但是我不清楚该软件包的安装位置,因此可以从中运行可执行文件。 每个https://golang.org/doc/code.html#remote似乎它都将安装在我的shell 中,但未在其中定义(尽管该命令似乎可以正常工作)。Go是通过Homebrew安装的。 问题答案: 我通过运行找到了缺少的线索: 由此,我在上找到了相关的可执行文件。

  • 在第1讲中, (获取设备列表) 我们展示了如何获取适配器的基本信息 (如设备的名称和描述)。 事实上,WinPcap提供了其他更高级的信息。 特别需要指出的是, 由 pcap_findalldevs_ex() 返回的每一个 pcap_if 结构体,都包含一个 pcap_addr 结构体,这个结构体由如下元素组成: 一个地址列表 一个掩码列表 (each of which corresponds t

  • 安装必备软件 安装git 如果上面没有复制给sang账户sudo权限,请切换到root账户操作 sudo apt-get update sudo apt-get install git 安装nginx sudo apt-get install nginx 开机启动 (http://www.jianshu.com/p/2e03255cfabb) sudo apt-get install sysv

  • 问题内容: 如何通过goinstall列出所有已安装的软件包?我需要将所有安装在一台计算机上的软件包重新安装到另一台计算机上。 问题答案: $ GOROOT / goinstall.log下有一个列表。如果要将所有软件包安装在另一台计算机上,只需复制文件并运行, goinstall将读取该文件并安装其中列出的所有软件包。

  • 问题内容: 有人可以告诉我在哪里可以找到使用我安装的Node.js模块 吗? 问题答案: 全球图书馆 您可以运行以查看安装了哪些全局库以及它们的位置。使用用于显示人的路截断输出。如果您只想显示主软件包而不显示与其一起安装的子软件包(可以使用),则可以使用- 将显示所有软件包并仅获取全局安装的软件包,只需添加-g ie即可。 在Unix系统上,它们通常放在全局中或在全局中安装。如果将环境变量设置为此

  • 2.1.1.1. 下载软件包 首先进入官方免费下载页面 http://www.verysync.com/download.html 我们已经为主流的操作系统提供了对应的软件安装包, 选择您在使用的平台对应软件安装包进行安装即可。 2.1.1.2. Windows 安装 比如Windows的,如果不清楚自己电脑是32位或64位的,请下载32位的就可以,因为是绿色软件,下载完解压出来就可以使用。 解压

  • 问题内容: 我激活了已安装pip的virtualenv。我做了 和Django成功下载。现在,我想打开Django文件夹。文件夹在哪里? 通常它会在“下载”中,但是我不确定如果在virtualenv中使用pip安装它会在哪里。 问题答案: __与 virtualenv一起 使用时, pip 通常会在路径中安装软件包。 例如,我使用 Python 2.7创建了一个名为 venv_test 的测试vi

  • 我激活了一个安装了pip的虚拟环境。我做了 和Django成功下载。现在,我想打开Django文件夹。文件夹在哪里? 通常它会在“下载”中,但我不确定如果我在虚拟环境中使用pip安装它会在哪里。