Új hozzászólás Aktív témák
-
thon73
tag
válasz
SektorFlop
#571
üzenetére
Sianis-nak: Igen, ez fontos észrevétel, nem gondoltam rá. Így már akkor is visszaáll az elejére, ha csak pl. megnézek külön egy rekordot, hiszen más Activity kerül előtérbe. Hm.
Ez a téma szerintem sokaknak okoz fejtörést. Honeycomb felett változott egyébként a megközelítés (és én még nem tartok ott), de sajnos, a konkrét probléma ettől még megmarad.
A probléma veleje: az Activity az onCreate-onStart-onResume metódusokon kersztül indul, és rendre az onPause-onStop-onDestroy metódusokon áll le. Ezek persze párban állnak, tehát ha csak az onPause-ig jut a leállás (más kerül az előtérbe), akkor az onResume ponton éled fel a program.
Ez azt jelenti, hogy az onCreate-ben megnyitott adatbázist az onDestroyban kellene bezárni. Ha előbb zárjuk be (pl. onPause), akkor visszatéréskor (onResume-tól kezdődik), nem lesz nyitott adatbázisunk (mivel a megnyitást végző onCreate nem kerül meghívásra!)
DE! ÉS ITT JÖN A BAJ! Az Android rendszer - ha fogy a memória - CSAK AZ ONPAUSE VÉGREHAJTÁSÁT GARANTÁLJA! Simán kihagyja az onDestroy-ban lévő zárást.
Az adapternek viszont végig szüksége van a nyitott adatbázisra, ill. a hozzá tartozó cursorra. Ezért jutottam oda, hogy a listát az onResume-ban kell lekérdezni és megalkotni, aztán az onPause-ban bezárni. Sianis-nak azonban igaza van, ezzel minden apró-cseprő dolog miatt újraépül a lista.Kérdések:
- lehet, hogy nem kell törődni az onPause utáni kényszerleállással? A vélemények szerint kell, saját tapasztalatom nincs (túl nagy a memóriám
)
- javítja-e a helyzetet, ha onPause-ban pl. a lista helyzetét is tároljuk?
- van-e valakinek precízebb ötlete?
- javasolják a singleton-t (Application-ból származtatva), ami járható út; így ugyanis a teljes Application (és nem Activity!) futás alatt nyitva marad az adatbázis (és a cursor). De honnét tudom, hogy véget ért a történet, és be kell zárni az adatbázist?Néha nem látom át, hogy milyen logika alapján képzelték el ezt az egészet. Igaz, én csak amatőrben játszom...
Új hozzászólás Aktív témák
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Házimozi belépő szinten
- Revolut
- World of Tanks - MMO
- Filmvilág
- Elektromos autók - motorok
- Milyen hagyományos (nem okos-) telefont vegyek?
- Formula-1
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Eredeti játékok OFF topik
- További aktív témák...
- 15.gen! Intel Core ULTRA 9 285K (24mag!) +32GB DDR5 kit +ASROCK Z890 PRO-A! GAR/SZÁMLA (Te nevedre)!
- ASUS TUF Gaming GeForce RTX 3080 10GB OC GDDR6X 320bit LHR dobozos, 1 tulajos, 2027.07.04-ig gari
- Intel D3-S4510 1,92 TB - 2,5", SATA3, 7100 TBW - 100/99% - Eladó!
- Intel D3-S4510 1,92 TB - 2,5", SATA3, 7100 TBW - Új - Eladó!
- P1 Gen5 16" FHD+ IPS i7-12800H RTX A1000 32GB 1TB NVMe ujjlolv IR kam gar
- ÚJ Lenovo LOQ 15AHP10 - 15.6"FHD 144Hz - Ryzen 7 250 - 16GB 1TB - Win11 - RTX 5060 - 3 év gari
- Csere-Beszámítás! Asus Tuf FX506I Gamer Notebook! R7 4800H / 1650Ti / 16GB DDR4 / 512GB SSD
- AKCIÓ! 1TB Kingston KC3000 NVMe SSD meghajtó garanciával hibátlan működéssel
- 4TB Gen4x4 SSD
- GEN5!!! 14/12GB/s 2TB Gen5x4 NVMe SSD, 1 év gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
)