zezung27 / api-mymeostore

1 stars 0 forks source link

ApkExtractor #8

Closed zezung27 closed 1 year ago

zezung27 commented 1 year ago

package com.matcos.dynamicislandlight.utils;

import android.content.Context; import android.content.Intent; import java.util.ArrayList; import java.util.List; import android.content.pm.ApplicationInfo; import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.graphics.drawable.Drawable;

import androidx.core.content.ContextCompat;

import com.matcos.dynamicislandlight.R;

public class ApkExtractor {

Context context1;

public ApkExtractor(Context context2){

    context1 = context2;
}

public List<String> GetAllInstalledApkInfo(){

    List<String> ApkPackageName = new ArrayList<>();

    Intent intent = new Intent(Intent.ACTION_MAIN,null);

    intent.addCategory(Intent.CATEGORY_LAUNCHER);

    // intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED );

    List<ResolveInfo> resolveInfoList = context1.getPackageManager().queryIntentActivities(intent,0);

    for(ResolveInfo resolveInfo : resolveInfoList){

        ActivityInfo activityInfo = resolveInfo.activityInfo;

        // if(!isSystemPackage(resolveInfo)){

            ApkPackageName.add(activityInfo.applicationInfo.packageName);
        // }
    }

    return ApkPackageName;

}

public boolean isSystemPackage(ResolveInfo resolveInfo){

    return ((resolveInfo.activityInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0);
}

public Drawable getAppIconByPackageName(String ApkTempPackageName){

    Drawable drawable;

    try{
        drawable = context1.getPackageManager().getApplicationIcon(ApkTempPackageName);

    }
    catch (PackageManager.NameNotFoundException e){

        e.printStackTrace();

        drawable = ContextCompat.getDrawable(context1, R.mipmap.ic_launcher);
    }
    return drawable;
}

public String GetAppName(String ApkPackageName){

    String Name = "";

    ApplicationInfo applicationInfo;

    PackageManager packageManager = context1.getPackageManager();

    try {

        applicationInfo = packageManager.getApplicationInfo(ApkPackageName, 0);

        if(applicationInfo!=null){

            Name = (String)packageManager.getApplicationLabel(applicationInfo);
        }

    }catch (PackageManager.NameNotFoundException e) {

        e.printStackTrace();
    }
    return Name;
}

}

zezung27 commented 1 year ago

package com.matcos.dynamicislandlight.utils;

public class Contanst { public static String NOTI_INTENT_LOCAL_BROADCAST = "NOTI_INTENT_LOCAL_BROADCAST"; public static String MINI_TO_EXPAND_MEDIA_LOCAL_BROADCAST = "MINI_TO_EXPAND_MEDIA_LOCAL_BROADCAST"; public static String EXPAND_TO_MINI_MEDIA_LOCAL_BROADCAST = "EXPAND_TO_MINI_MEDIA_LOCAL_BROADCAST"; public static String NAME_PACKAGE = "LIST_PACKAGE"; public static String PREF_NAME_PACKAGE = "SHARED_PREFS_FILE"; public static String REMOVE_NOTIFICATIONS = "REMOVE_NOTIFICATIONS";

public static int TYPE_IDLE = 1;
public static int TYPE_MINI_NOTI = 2;
public static int TYPE_EXPAND_NOTI = 3;
public static int TYPE_EXPAND_TYPE2 = 4;

}