5

Mam aplikację z różnymi typami powiadomień, które może odbierać (na przykład News i Podcast). Obecnie ma dwa proste przełączniki, w których użytkownik może włączać i wyłączać różne typy powiadomień. Działa po prostu subskrybując i anulując subskrypcję odpowiedniego tematu Firebase dla danego typu. Niewątpliwą zaletą jest to, że urządzenie otrzymuje tylko powiadomienie, jakiego chce użytkownik, i nie musi ich filtrować lokalnie => wydajność baterii i danych.Używanie komunikatów tematu Firebase z kanałami powiadomień Androida

Problem polega na tym, że chcę go połączyć z nowymi kanałami powiadomień z Androidem O. Czy mam rację, zakładając, że jedynym sposobem jest zasubskrybowanie wszystkich tematów w Firebase i umożliwienie użytkownikowi ręcznego wyłączenia niechcianych w ustawieniach Androida?

Czy istnieje lepszy sposób, który oszczędza więcej baterii (nie otrzymując wszystkich powiadomień)?

Odpowiedz

4

The Notification Channel (funkcja wymagana tylko w Androidzie O - prawdopodobnie w przyszłości) jest (podobnie) parametrem, który (zwykle) będzie używany do sortowania/zarządzania powiadomieniami, które budujesz lokalnie. -

Android O wprowadza kanały powiadomień, aby zapewnić ujednolicony system pomagający użytkownikom zarządzać powiadomieniami.

Niekoniecznie wyłączyć odbieranie powiadomień, że nie chcą odbierać, ale (AFAIK) powiadomień zbudowany bez Kanału powiadomienie nie pojawi się ekran w Android/O (nie otrzymał! = nie wyświetlany). np. Twoje urządzenie może nadal odbierać powiadomienia, ale po prostu nie jest wyświetlane.

W przypadku powiadomień wysyłanych w ramach tematów, o ile subskrybowany jest odpowiedni token rejestracji, jest to oczekiwane zachowanie, które uzyskałby klient: handle it accordingly.

Z tym wszystkim, co już zostało zaimplementowane (jeśli dobrze rozumiem twój wpis - subskrybuj i wypisz się z tematów na podstawie jakiegoś przełącznika) jest już najprostsze, jak tylko można.

Jeśli chcesz całkowicie wyłączyć powiadomienia, możesz zadzwonić pod numer deleteInstanceId(). Zobacz moje odpowiedzi here i here, aby uzyskać dodatkowe informacje.

+3

Wygląda na to, że najłatwiej jest zbudować jeden kanał powiadomień i nadal pozwolić użytkownikowi wybrać poszczególne kategorie powiadomień w mojej aplikacji. Wszystko inne doprowadziłoby do potencjalnie mylącego interfejsu użytkownika. Dzięki za odpowiedź! – Thomas