- Házi hangfal építés
- Fejhallgató erősítő és DAC topik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Xiaomi Mi Box androidos médialejátszó 4K és HDR támogatással
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Androidos fejegységek
- ThinkPad (NEM IdeaPad)
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Nem szabad futtatni az új Red Magic csúcstelefonokon a 3DMarkot
- Lenovo Thinkbook, Yoga széria
Új hozzászólás Aktív témák
-
thon73
tag
Megoldottam. Hátha segít valaki másnak is...
Szituáció:
Van egy preference activity/fragment és van egy service, ami olvassa a preferences-t. (A service "védett", semmilyen módon nem lehet hozzáférni a rendszer által támogatott módok közül.)
A gond:
A preference változásait az activity (is) kell, hogy figyelje; részben a feliratok módosítása, részben viszont ellenőrzés miatt (nem biztos, hogy a service fut...)
Ha az ellenőrzés miatt módosul az érték, akkor a változást figyelő onSharedPreferenceChanged() újra meghívásra kerül.
A service is kell figyelje a változást, mert néha reagálnia kellene rá. De az előző esetben a rekació akár kétszer is megtörténhet, is megtörténhet. Ez az adott megoldásban több szempontból is gond, mert pl. nem szabad a nem ellenőrzött értékekkel dolgozni, sok idő stb.
Megoldás:
Pofonegyszerű. Bevezettem egy preference-t "counter" kulccsal. Ha a preference ellenőrzése elegédett, akkor növeli a "counter"-t. Service meg csak ezt a countert figyeli.És a service nem kell kommunikáljon semmilyen megbízhatatlan activity-vel. Csak reagál a változásokra.
Semmi mást nem találtam, ahogy egy InputMethodService-t el lehetne érni Android által adott megoldásokkal.
Új hozzászólás Aktív témák
- exHWSW - Értünk mindenhez IS
- Házi hangfal építés
- Napelem
- Xiaomi 17 Ultra - jó az optikája
- Óra topik
- hcl: GPT diszk kisebbre klónozása
- Debrecen és környéke adok-veszek-beszélgetek
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Építő/felújító topik
- Crimson Desert
- További aktív témák...
- Toshiba KXG50ZNV1T02 1TB M.2 NVMe PCIe Gen3 x4 SSD
- Logitech MX Master 3S for MAC
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 5050 8GB GAMER PC termékbeszámítással
- Oneplus 9 128GB,Átlagos,Adatkabel,12 hónap garanciával
- 15,6" Dell Latitude laptopok: E5550, E5570, 5590, 5500, 5501, 5510, 5520 / SZÁMLA + GARANCIA
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

