Ú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
- LG UltraGear 32GS85QX-B IPS Monitor! 2560x1440 / 180Hz / 1ms / G-Sync / FreeSync
- GYÖNYÖRŰ iPhone 15 Pro 128GB Blue Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4680
- HP EliteBook x360 1040 G11 - 14" WUXGA Érintő - Ultra 7 155H - 16GB - 512GB - Win11
- Dell Precision 5511,15.6"FHD,i5-10400H,16GB DDR4,256GB SSD,WIN11,LTE kártya
- Sony PS3/PS4/PS5 és kézikonzolok Okosítása és Szoftveres szintű javítása - MÁR 13.00-S PS4 IS!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
