Проверьте наличие уведомлений для определенного приложения, используя имя пакета - PullRequest
0 голосов
/ 03 декабря 2018

Я реализовал listView с установленными приложениями в моем телефоне Android.Я хотел бы знать статус notification конкретного приложения в listView on clicking it.Я использовал класс NotificationManagerCompat для проверки активных уведомлений, но я не могу передать context приложения, щелкнувшего по listView, потому что я могу получить только package info приложения.

Вот мой подход:

private boolean getActiveNotification(){
    List<AppList> res = new ArrayList<>();
    List<PackageInfo> packs = getPackageManager().getInstalledPackages(0);

    boolean flag = false;
    for (int i=0; i< packs.size(); i++){
        PackageInfo p = packs.get(i);
        if(!NotificationManagerCompat.from(p).areNotificationsEnabled()){
            flag = false;
        } else {
            flag = true;
        }
    }

    return flag;
}

Здесь AppList - это POJO с name и icon в качестве его полей.

Я бы реализовал *Функция 1020 * в моем методе onCreate, внутри listView.setOnItemClickListener().

Итак, как мне получить context из package info или name определенного приложения, которое является rowItem в listView.

Ниже приведен скриншот моего listView: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...