The Java implementation retrieves the packages installed on the android device

  • 2020-04-01 04:19:18
  • OfStack

In this article, I'm going to show you how to get the apps that are already installed on Android phones. All right


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();
  }

Now, how do we get the information about each application


package cn.lyz.mobilesafe.domain;

import android.graphics.drawable.Drawable;


public class AppInfo {
	//icon
	private Drawable app_icon;
	//The application name
	private String app_name;
	//Application version number
	private String app_version;
	//The name of packages
	private String packagename;
	//Is it the user 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 + "]";
	}
}


Related articles: