@uchiha322

Как правильно вызвать данный класс?

Здравствуйте, я новичек в андроид разработке(
Мне показали данный код но я не знаю как правильно его реализовать в приложении , помогите пожалуйста!)

public class GetApps {
    public static List<Drawable> getApps(Activity activity) {
        List<Drawable> result = new ArrayList<>();
        PackageManager packageManager = activity.getPackageManager();
        List<ApplicationInfo> listOfAppInfo = packageManager.getInstalledApplications(PackageManager.GET_META_DATA);

        for (ApplicationInfo applicationInfo : listOfAppInfo) {
            // this is our app
            if (applicationInfo.packageName.equals(activity.getPackageName())) continue;

            // this is system app
            if ((applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) continue;

            result.add(packageManager.getApplicationIcon(applicationInfo));
        }

        return result;
    }
  • Вопрос задан
  • 142 просмотра
Решения вопроса 1
Joker4567
@Joker4567
Android разработчик
class GetApps {
    public static List<Drawable> getApps(Activity activity) {
        List<Drawable> result = new ArrayList<>();
        PackageManager packageManager = activity.getPackageManager();
        List<ApplicationInfo> listOfAppInfo = packageManager.getInstalledApplications(PackageManager.GET_META_DATA);

        for (ApplicationInfo applicationInfo : listOfAppInfo) {
            // this is our app
            if (applicationInfo.packageName.equals(activity.getPackageName())) continue;

            // this is system app
            if ((applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) continue;

            result.add(packageManager.getApplicationIcon(applicationInfo));
        }

        return result;
    }

}

public class Main extends Activity {
    public void main() {
        //это лишь пример вызова, вызов в твоём проекте осуществляться может в любом месте, в activity!
        List<Drawable> result = GetApps.getApps(this);
    }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы