Hirdetés
- Gamepad
- A cégvezetők látják az AI költségeit, csak azt nem hogyan lesz ebből haszon
- AMD Catalyst™ driverek topikja
- Milyen billentyűzetet vegyek?
- Kormányok / autós szimulátorok topikja
- Billentyűzet gondom van
- Milyen belső merevlemezt vegyek?
- HiFi műszaki szemmel - sztereó hangrendszerek
- ASUS ROG Ally
- Milyen CPU léghűtést vegyek?
Új hozzászólás Aktív témák
-
Karma
félisten
Nem elfogadták, hanem a kérdező egyszemélyben fogadta el a választ. Nem mindegy, mert egyáltalán nem biztos, hogy helyes is. Amellett, hogy 2010-ben készült, alapvetően elég súlyos hiba egy Contextre(*) static változóval hivatkozni, mert ezzel keresztülhúzod az életciklusát.
(*): Az Application egy kivétel ez alól, mert processzenként csak egy jön létre biztosan.
Ha a Service-ed példányával akarsz közvetlenül kommunikálni, akkor a Binder erre a megoldás, amit egyébként szintén pár sorral le lehet tudni. Még csak nem is agysebészet, kell egy Binder subclass, az onBind metódus a Service oldalon; egy ServiceConnection és a bindService/unbindService hívás az Activity oldalon.
Ha nem közvetlenül akarsz vele beszélni, akkor pedig ott vannak az Intentek és a BroadcastReceiverek - a Service is simán regisztrálhat egyet amikor életben van -; vagy Ottót ill. EventBust is használhatsz. Mondjuk csak ehhez a feladathoz overkill egy külső libet behozni.
vlevi: Egy kicsit összekeverted a dolgokat. Nem ezek a service-ek típusai.
1) Vannak a bound service-ek, amik ahogy írtad, a bindService hatására élednek, és leállnak amikor lecsatlakozott az utolsó kliens.
2) Vannak a started service-ek, amik egy startService(Intent) hatására indulnak; eldönthetik, hogy leállnak-e, futnak tovább, vagy úgy futnak tovább, hogy ha bármi miatt lehalnának, a rendszer akkor is indítsa vissza őket (sticky). Ettől független dolog az, hogy csak az alkalmazásodon belül, vagy kívülről is hívható-e (exported flag).
3) Vannak még hibrid service-ek, amik olyan startedek, amikre bindolni is lehet. Ez a billentyűzet történet szerintem ebbe a kategóriába kellene, hogy essen.
Az IntentService egy speciális started service ősosztály, ami arra szolgál, hogy egyszerűen tudj a háttérben végrehajtandó feladatokat sorban átadni neki, és majd leáll, amikor mindennel végzett. De ettől még nem lesz külön kategória.
-
vlevi
nagyúr
Ez az intent service. Amit mindentől fuggetlenul el lehet inditani, és fut a háttérben, nem kapcsolódiksemmihez. A servixenek saját magának kell leállnia, ha ninxs rá szükség. De tud üzenni más activitynek.
Én pl ezzel oldottam meg azt, hogy az applikqaciobol kilepve elinditok egy servicet, ami backupot készít, ha szukseges, es utana leallitja magat.
A bindservice arra valo, hogy akkor megy, amikor valami hozzakapcsolodik( ez a bind). És leáll automatikusan, ha mindenki lekapcaolodott rola (unbind). Például pont emiatt nem jó az appbol kilepeskori backupra, ugye, mert az app bezaraskor kéne inditani.
A harmadik service a legegyszerubb fajta, ami csak az appon belul fut, nem indithato külön. De appon belöli apróságokhoz meg pont az a jó.
Új hozzászólás Aktív témák
- Xbox Series X|S
- Gitáros topic
- Gamepad
- Honor 200 Pro - mobilportré
- A cégvezetők látják az AI költségeit, csak azt nem hogyan lesz ebből haszon
- Arc Raiders
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Luck Dragon: Asszociációs játék. :)
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Samsung Galaxy Felhasználók OFF topicja
- További aktív témák...
- Macbook Pro (2021) A2485 EMC 3651 27% 16" Liquid Retina XDR IPS M1 Pro 32GB 500GB magyar vbill gar
- HP Elitebook 850 G8 15,6" i5 1135 G7, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- Macbook Pro 13" A2338 2022 M2 16GB 256GB 1
- HP ProBook 450 G8 15,6" i5 1135 G7, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- Macbook Pro 13" A2338 2020 M1 16GB 256GB 1 (Több db)
- LG 32GS94UX - 32" OLED / UHD 4K / 240Hz - 480Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Apple MacBook Pro 16 (2021) 16GB / 1TB használt, szép állapot 90% akku - 136 ciklus
- iPhone 12 64GB 100% (3hónap Garancia) - AKCIÓ
- SK Hynix 32GB DDR4 2666MHz PC4-21300 laptop RAM
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

