Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

Notifikacije u Androidu
WWW:

Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji diplomskih i starih studija -> Programiranje za suvremene procesore - Programiranje aplikacija za Android
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
lrozic
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 11. 01. 2016. (14:04:08)
Postovi: (15)16
Sarma = la pohva - posuda
= 0 - 0

PostPostano: 13:55 uto, 29. 1. 2019    Naslov: Notifikacije u Androidu Citirajte i odgovorite

Pozdrav,

duzan sam pojasnjenja nekih gresaka s vjezbi o notifikacijama. Prije toga, par detalja:

Notification je klasa za notifikacije za trenutnu build verziju, NotificationCompat (kao i ostale Compat verzije klasa) sluzi za ubacivanje novih mogucnosti u stare verzije. Dakle, Compat verzije ce imati funkcionalnosti novijih verzija implementirane na nacin da rade u starijim verzijama cije nativne verzije ne podrzavaju te funkcionalnosti.

Ukoliko zelite da aplikacija radi na vise verzija istovremeno (tj. bez mijenjanja koda) jedini nacin da to (ispravno) postignete je da zapakirate pozive notifikacija u "if" blokove (npr. pogledajte prvi odgovor [url=https://stackoverflow.com/questions/25163641/notification-builder-not-supported-below-4-1-how-do-i-specify-to-only-use-notif]ovdje[/url]).

Za verzije ispod 4.1. koristite NotificationCompat. Ne zaboravite maknuti metode za postavljanje notification channela -- ako ih ostavite aplikacija ce se srusiti.

Za ostale verzije, mozete koristiti NotificationCompat ili Notification. Opcenito se preporuca koristenje NotificationCompat klase jer to zahtijeva manje promjena koda kada prelazite na drugu verziju.

[b]Prva greska (toast prozor s porukom o gresci):[/b]
Na racunalima u praktikumu imamo samo emulator za android verziju 8.0. U verziji 8.0 (i nadalje) notifikacije zahtijevaju definiranje notification channela -- ukoliko to ne napravite, notifikacije nece raditi (ispisat ce se toast poruka u kojoj pise da je notification channel jednak null i notifikacija se nece pojaviti). Dakle, cak i ako ste odabrali projekt za neku raniju verziju, emulator i dalje radi na verziji 8.0 i zahtijeva notifikacijske kanale! Stoga, ukoliko nemate drugih razloga a radite na racunalima u praktikumu, preporucam izradu projekata verzije 8.0 na kolokviju.

[b]Druga greska (nepostojeci konstruktor):[/b]
U verziji 8.0, NotificationBuilder nije imao konstruktor s dva parametra (gdje se prima id nekon notifikacijskog kanala), vec samo onaj s jednim parametrom. Kako smo zakljucili na vjezbama, oba konstruktora rade dok god podesite kanal. Nisam uspio reproducirati gresku koja se nekima javljala (kompajler "ne zna" za drugi konstruktor). Kako su verzije studija i emulatora jednake svima, i kako vecina vas nije imala taj problem, potencijalni krivci su mi odabir krive verzije projekta i/ili ne pozivanje android-setup prije pokretanja. Ukoliko pronadjem pravog krivca u medjuvremenu, javit cu ovdje.

Lijep pozdrav svima,
Lovro
Pozdrav,

duzan sam pojasnjenja nekih gresaka s vjezbi o notifikacijama. Prije toga, par detalja:

Notification je klasa za notifikacije za trenutnu build verziju, NotificationCompat (kao i ostale Compat verzije klasa) sluzi za ubacivanje novih mogucnosti u stare verzije. Dakle, Compat verzije ce imati funkcionalnosti novijih verzija implementirane na nacin da rade u starijim verzijama cije nativne verzije ne podrzavaju te funkcionalnosti.

Ukoliko zelite da aplikacija radi na vise verzija istovremeno (tj. bez mijenjanja koda) jedini nacin da to (ispravno) postignete je da zapakirate pozive notifikacija u "if" blokove (npr. pogledajte prvi odgovor ovdje).

Za verzije ispod 4.1. koristite NotificationCompat. Ne zaboravite maknuti metode za postavljanje notification channela – ako ih ostavite aplikacija ce se srusiti.

Za ostale verzije, mozete koristiti NotificationCompat ili Notification. Opcenito se preporuca koristenje NotificationCompat klase jer to zahtijeva manje promjena koda kada prelazite na drugu verziju.

Prva greska (toast prozor s porukom o gresci):
Na racunalima u praktikumu imamo samo emulator za android verziju 8.0. U verziji 8.0 (i nadalje) notifikacije zahtijevaju definiranje notification channela – ukoliko to ne napravite, notifikacije nece raditi (ispisat ce se toast poruka u kojoj pise da je notification channel jednak null i notifikacija se nece pojaviti). Dakle, cak i ako ste odabrali projekt za neku raniju verziju, emulator i dalje radi na verziji 8.0 i zahtijeva notifikacijske kanale! Stoga, ukoliko nemate drugih razloga a radite na racunalima u praktikumu, preporucam izradu projekata verzije 8.0 na kolokviju.

Druga greska (nepostojeci konstruktor):
U verziji 8.0, NotificationBuilder nije imao konstruktor s dva parametra (gdje se prima id nekon notifikacijskog kanala), vec samo onaj s jednim parametrom. Kako smo zakljucili na vjezbama, oba konstruktora rade dok god podesite kanal. Nisam uspio reproducirati gresku koja se nekima javljala (kompajler "ne zna" za drugi konstruktor). Kako su verzije studija i emulatora jednake svima, i kako vecina vas nije imala taj problem, potencijalni krivci su mi odabir krive verzije projekta i/ili ne pozivanje android-setup prije pokretanja. Ukoliko pronadjem pravog krivca u medjuvremenu, javit cu ovdje.

Lijep pozdrav svima,
Lovro


[Vrh]
Korisnički profil Pošaljite privatnu poruku
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji diplomskih i starih studija -> Programiranje za suvremene procesore - Programiranje aplikacija za Android Vremenska zona: GMT + 01:00.
Stranica 1 / 1.

 
Forum(o)Bir:  
Možete otvarati nove teme.
Možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You cannot download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan