English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Méthode pour obtenir des informations sur les applications installées dans le système Android

Cette exemple montre la méthode de développement Android pour obtenir des informations sur les applications installées dans le système. Partageons-le avec tout le monde pour la référence, voici les détails :

public class AppInfoParser {
  private static String tag = "AppInfoParser";
  public static List<AppInfo> getAppInfos(Context context) {
   //First get the package manager
    PackageManager packageManager = context.getPackageManager();
    //Get all installed packages
    List<PackageInfo> installedPackages = packageManager.getInstalledPackages(0);
    ArrayList<AppInfo> appInfos = new ArrayList<>();
    for (PackageInfo installedPackage : installedPackages) {
      AppInfo appInfo = new AppInfo();
      //Package name
      String packageName = installedPackage.packageName;
      appInfo.setPackageName(packageName);
      //Get the icon
      Drawable icon = installedPackage.applicationInfo.loadIcon(packageManager);
      appInfo.setIcon(icon);
      //Get the name of the application
      String appName = installedPackage.applicationInfo.loadLabel(packageManager).toString();
      appInfo.setAppName(appName);
      //Get the path of the installed package
      String sourceDir = installedPackage.applicationInfo.sourceDir;
      File file = new File(sourceDir);
      //Get the size of the installed apk
      long apkSize = file.length();
      //Format the size of the apk
      appInfo.setApkSize(Formatter.formatFileSize(context, apkSize));
      int flags = installedPackage.applicationInfo.flags;
      //vérifier si l'application actuelle est une application système
      if((flags & ApplicationInfo.FLAG_SYSTEM) !=0){
        //alors c'est l'application système
        appInfo.setUserApp(false);
      }else{
        //alors c'est l'application utilisateur
        appInfo.setUserApp(true);
      }
      if((flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE)!=0){
       //alors l'installation actuelle est sur la carte SD
        appInfo.setSD(true);
      }else{
        //alors c'est la mémoire du téléphone
        appInfo.setSD(false);
      }
      appInfos.add(appInfo);
    }
    return appInfos;
  }
}
public class AppInfo {
  //L'icône de l'application
  private Drawable icon;
  //Le nom de l'application
  private String appName;
  //La taille de l'application
  private String apkSize;
  //représente l'application utilisateur
  private boolean isUserApp;
  //L'emplacement de stockage.
  private boolean isSD;
  private String packageName;
  public String getPackageName() {
    return packageName;
  }
  public void setPackageName(String packageName) {
    this.packageName = packageName;
  }
  public Drawable getIcon() {
    return icon;
  }
  public void setIcon(Drawable icon) {
    this.icon = icon;
  }
  public String getAppName() {
    return appName;
  }
  public void setAppName(String appName) {
    this.appName = appName;
  }
  public String getApkSize() {
    return apkSize;
  }
  public void setApkSize(String apkSize) {
    this.apkSize = apkSize;
  }
  public boolean isUserApp() {
    return isUserApp;
  }
  public void setUserApp(boolean isUserApp) {
    this.isUserApp = isUserApp;
  }
  public boolean isSD() {
    return isSD;
  }
  public void setSD(boolean isSD) {
    this.isSD = isSD;
  }
  @Override
  public String toString() {
    return "AppInfo{" +
        " appName=" + appName + "\'" +
        " apkSize=" + apkSize + "\'" +
        " isUserApp=" + isUserApp +
        " isSD=" + isSD +
        ';
  }
}

Les lecteurs intéressés par plus de contenu sur Android peuvent consulter les sujets spéciaux de ce site : 'Tutoriel d'introduction et d'avancement du développement Android', 'Conseils de débogage et solutions de problèmes courants pour Android', 'Résumé des utilisations des composants de base Android', 'Résumé des techniques des vues View Android', 'Résumé des techniques de mise en page layout Android' et 'Résumé des utilisations des contrôles Android'.

J'espère que les informations de cet article seront utiles pour la conception de programmes Android.

Déclaration : le contenu de cet article est issu du réseau, propriété de l'auteur original, contribué et téléversé par les utilisateurs d'Internet. Ce site ne détient pas de droits de propriété, n'a pas été édité par l'homme, et n'assume aucune responsabilité juridique. Si vous trouvez du contenu suspect de violation de droits d'auteur, veuillez envoyer un e-mail à : notice#oldtoolbag.com (veuillez remplacer # par @ lors de l'envoi d'un e-mail pour signaler une violation, et fournir des preuves pertinentes. Une fois vérifié, ce site supprimera immédiatement le contenu suspect de violation de droits d'auteur.)

Vous pourriez aussi aimer