Zauważyłem, że używam przestarzałej metody dla noficitations (notification.setLatestEventInfo ())
Mówi, aby użyć Notification.Builder.
- Jak tego używam?
Kiedy próbuję utworzyć nową instancję, mówi mi:
Notification.Builder cannot be resolved to a type
android
api
notifications
deprecated
Saariko
źródło
źródło
Odpowiedzi:
To jest w API 11, więc jeśli tworzysz coś wcześniejszego niż 3.0, powinieneś nadal używać starego API.
Aktualizacja : klasa NotificationCompat.Builder została dodana do pakietu pomocy technicznej, dzięki czemu możemy użyć jej do obsługi poziomu API v4 i nowszych:
http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html
źródło
Notification.Builder API 11 lub NotificationCompat.Builder API 1
To jest przykład użycia.
źródło
Notification.Builder
stronie z dokumentami. Robiłem to, co mówili, ale nie miało to żadnego sensu. Przychodzę tutaj i widzę, że jest inaczej. Naprawdę doceniam twoją odpowiedź, ponieważ to uczyniło mnie świadomym błędu, który jest na doktorze.builder.getNotification()
jest przestarzała. Mówi, że powinieneś użyćbuilder.build()
.setSmallIcon()
,setContentTitle()
isetContentText()
są minimalne wymagania.oprócz wybranej odpowiedzi tutaj jest przykładowy kod dla
NotificationCompat.Builder
klasy z Source Tricks :źródło
Narzędzie Notification Builder jest przeznaczone wyłącznie dla interfejsu API systemu Android na poziomie 11 lub nowszym (Android 3.0 i nowsze).
Dlatego jeśli nie kierujesz reklamy na tablety Honeycomb, nie powinieneś używać narzędzia Notification Builder, ale raczej postępować zgodnie ze starszymi metodami tworzenia powiadomień, takimi jak poniższy przykład .
źródło
UPDATE android-N (marzec-2016)
Aby uzyskać więcej informacji, odwiedź łącze Aktualizacje powiadomień .
przykładowy kod .
źródło
Miałem problem z tworzeniem powiadomień (tylko dla Androida 4.0+). Ten link pokazał mi dokładnie, co robię źle i mówi, co następuje:
Zasadniczo brakowało mi jednego z nich. Jako podstawę do rozwiązywania problemów z tym, upewnij się, że masz przynajmniej wszystkie z nich. Miejmy nadzieję, że to uratuje komuś ból głowy.
źródło
Na wypadek, gdyby to komuś pomogło ... Miałem duży problem z konfiguracją powiadomień za pomocą pakietu wsparcia podczas testowania na nowszych i starszych interfejsach API. Udało mi się zmusić je do pracy na nowszym urządzeniu, ale otrzymałem test błędu na starym urządzeniu. W końcu udało mi się usunąć wszystkie importy związane z funkcjami powiadomień. W szczególności NotificationCompat i TaskStackBuilder. Wygląda na to, że podczas konfigurowania mojego kodu na początku import został dodany z nowszej kompilacji, a nie z pakietu wsparcia. Potem, gdy chciałem później zaimplementować te elementy podczas zaćmienia, nie zostałem poproszony o ich ponowne importowanie. Mam nadzieję, że to ma sens i pomaga komuś innemu :)
źródło
Działa nawet w API 8, możesz użyć tego kodu:
Lub proponuję zapoznać się z doskonałym samouczkiem na ten temat
źródło
używałem
źródło
źródło
Samodzielny przykład
Ta sama technika jak w tej odpowiedzi, ale:
Źródło:
Przetestowano w systemie Android 22.
źródło