Přejít na obsah


Fotka

Locus - addon GeoGet Database


  • Pokud chcete vložit odpověď, přihlašte se
462 odpovědí na toto téma

#221 georabbits.cz

georabbits.cz

    Advanced Member

  • Members
  • PipPipPip
  • 90 příspěvků(y)

Publikováno 30 březen 2014 - 14:04

S novou verzí ta samá hláška u obou přístrojů a verzí Androidu.

A když už mám zprovozněný screen recorder, tak ještě na YT: zde


  • 0

georabbits.cz.png


#222 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 30 březen 2014 - 14:23

Hmm, hmm. Divné, zvláštní... Za chvilku mi dorazí přítelkyně, zkusím to na jejím čtyřkovém androidu.. 


  • 0
\m/

#223 HaLuMa

HaLuMa

    Autor Geogetu

  • Members
  • PipPipPip
  • 11 450 příspěvků(y)

Publikováno 30 březen 2014 - 15:01

To bude nejspíše ono, dotaz je náročnější, než kuřátkův: https://github.com/J...ivity.java#L284

 

Chtelo by to mit tu databazi, se kterou je to pomale, a zaroven vedet, jakou to pouziva presne verzi SQlite3. Na novejsich verzich, co tu mam ja, a na moji databazi mi to tu beha bleskove. I query plan vypada smysluplne. ale ve starsich verzich se query plan urcoval uplne jinak, takze nevylucuji, ze to tam blbne.  Nicmene par postrehu mam:

 

1. proc v tom selectu delas kilometr dlouhy seznam sloupcu? Nestacilo by tam pouzit hvezdicku, kdyz si tam vybiras stejne skoro vsechno?

 

2. Pred ctenim dat zjistujes celkovy pocet vracenych zaznamu. Vzhledem k tomu, jak vyguje SQLite se svym jednosmernym cursorem, tak v tu chvili dojde k fyzickemu precteni vsech vyselectovanych zaznamu, a pravdepodobne se ulozi i nekam do pameti, aby sis tim pak mohl posleze prochazet. Nevim, jestli ten Sqlite wrapper v androidu umi i mnohem efektivnejsi zpusob, kdy si prectes 1 zaznam, zpracujes jej, a pak teprve prectes dalsi zaznam a ten predchozi si to nezapamatuje... a tak az na konec. V tu chvili by byl v pameti jen jeden zazna a ne vsechny najednou. Proste aby ten wrapper mel taky jednosmerny cursor bez bufferu.

 

3. Z ohledem na vyse popsane, by bylo zajimave vedet, kolik ti trva samotne zavolani db.rawQuery a kolik trva caches.getCount(); Treba se ten cas nabral tam. Dobre je si i zkontrolovat query plan pro jednotlive dotazy. To se dela tak, ze zavolas SQL "EXPLAIN QUERY PLAN SELECT blablabla..." a ono ti to vrati nekolikasloupcovou a nekolikaradkovou tabulku, kterou staci do nejakeho logu vypsat, a pak si zkontrolovat, jestli to pouziva spravneindexy, jestli se pracuje s tabulkami ve spavnem poradi, atd.


  • 2

#224 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 30 březen 2014 - 16:58

Tak záhada trvá dále, ale jistý pokrok už tu mám, už tu chybu dokážu taky nasimulovat. Problém je v tom, že když si aplikaci nainstaluji přímo do telefonu z vývojového prostředí, tak funguje vše jak má, když ji ale nechám vývojovým prostředím vygenerovat (*.apk) a to si nainstaluji, tak tam je ta chyba. Přitom se jedná o totožné zdrojové kódy... Tak kdyby někdo tušil o co jde... 

 

HaLuMo díky, mrknu se to.

Jenom k té jedničce, jestli narážíš na řádky 272 a 274, tak při ne-importu nepotřebuji listing, hint aj. Selský rozum mi říká, že by to mělo být rychlejší a datově méně náročnější, než výběr všeho. A zadruhé, potřebuji tam ID keše. To se vyskytuje pod stejným názvem sloupce v obou joinovaných tabulkách, takže getString(caches.getColumnIndex("id"))mi pak nic nevracelo. Tato situace možná jde nějak ošetřit, nepátral jsem po tom nějak extra...


  • 0
\m/

#225 HaLuMa

HaLuMa

    Autor Geogetu

  • Members
  • PipPipPip
  • 11 450 příspěvků(y)

Publikováno 30 březen 2014 - 18:08

Pokud nepotrebujes listing ani hint, pak cely ten JOIN je uplne zbytecny (a pomaly), pak ti staci prachobycejny jednoduchy select na tabulku geocache, ne?

 

Jinak seznam slopupcu muzes dat klidne jako "geocache.id, *"


  • 0

#226 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 30 březen 2014 - 19:02

Máš pravdu, díky, toho jsem si nevšiml, join jsem dal taky podmíněný.

 

To provedení db.rawQuery() trvá od 0 do 1 ms. :-) getCount() už je horší, tam to bere stovky milisenkund a docela nezávisle na počtu záznamů (počet, doba v ms) - (23, 616 ms), (1749, 709 ms), (10, 406 ms), (355, 892 ms), ... Takže zkusím to poupravit, abych s tím pracoval optimálněji. Opět díky za tip.

 

Jinak se zdá, že už jsem ten problém alespon prozatím vyřešil - otestoval jsem instalaci stažením z odkazu s žádná chyba se nezjevila, tak prosím zkuste i vy. :) Díky


  • 0
\m/

#227 petulinka1

petulinka1

    Advanced Member

  • Moderators
  • 4 035 příspěvků(y)

Publikováno 30 březen 2014 - 19:50

No, tak Stator pro dnesek snad hotov, tak se ted vrhnu na tebe :D


  • 0

#228 raddino

raddino

    Advanced Member

  • Members
  • PipPipPip
  • 197 příspěvků(y)

Publikováno 30 březen 2014 - 20:04

Při importu 20 logů mi to šlape takto:

Priprava: 1284 ms

Cyklus: 8843 ms

Celkem: 10128 ms

Nacitano kesi: 1261

Kesi za sekundu: 124.504074

 

Takže za mě spokojenost :)

 

Problém s importem 30 logů se zdá že je problém v locusu, tedy keše si mi načtou, ale již se nezobrazí okno kam importovat. Zkusím napsat menionovi


  • 0

#229 georabbits.cz

georabbits.cz

    Advanced Member

  • Members
  • PipPipPip
  • 90 příspěvků(y)

Publikováno 30 březen 2014 - 20:57

U mě to tak slavné není:

 

Priprava: 5137 ms
Cyklus: 33084 ms
Celkem: 38222 ms
Nacitano kesi: 773
Kesi za sekundu: 20.223873

 

Když chci importovat oblast s více kešemi, hlásí chybu: Zde


  • 0

georabbits.cz.png


#230 petulinka1

petulinka1

    Advanced Member

  • Moderators
  • 4 035 příspěvků(y)

Publikováno 30 březen 2014 - 22:15

Hura, hlaska s filtrem uz funguje! :)


  • 1

#231 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 30 březen 2014 - 22:21

Super, už to mám potvrzeno od dvou lidí + dvě má různá zařízení. :-)

 

Ta chyba co hlásil georabbits.cz je fixnuta - v databázi měl uložen tag s počet FP, ale bez hodnoty. Opraveno i v aplikaci, aby s tím počítala.


  • 0
\m/

#232 Dragouni

Dragouni

    Advanced Member

  • Members
  • PipPipPip
  • 151 příspěvků(y)

Publikováno 31 březen 2014 - 6:42

Kdyz si otevru bod nacteny pres LiveMapu tak v zakladnim infu ukazuje polozka schovano aktualni datum - tedy datum vytvoreni bodu na mape LiveMapou a ne datum ukryti kese. Jen jsem si toho ted vsimnul, jinak vse jede jak ma. Parada - diky moc


  • 0

#233 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 31 březen 2014 - 9:16

To bude chyba Locusu, já to nastavuji dobře... předám o vlákno vedle. :-)


  • 0
\m/

#234 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 31 březen 2014 - 13:18

Nová verze 3.3.8!

 

Co je nového?

- možnost zadat rádiu v rozmezí 0.1-9.9 km nebo 10-999 km


  • 0
\m/

#235 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 31 březen 2014 - 19:59

Tak jsem zase trošku optimalizoval a na mém starém šmejdu Galaxy S s 2.3.3 jsem se dostal ze 43 keší/s na 60 keší/s. Na Sony Xperia M s androidem 4.1.2 jsem na rychlosti až 135 keší/s. (měřeno při načítání 1147 keší)

 

Při importu s 10 logy je to logicky pomalejší:

2.3.3 - 27 keší/s

4.1.2 - 48 keší/s

 

Také Live mapa by měla doznat určitého zrychlení.

 

Tato verze je online, stále označena jako 3.3.8.


  • 0
\m/

#236 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 03 duben 2014 - 14:41

3. 4. 2014 - Čtvrtek 15:36 - Nová verze 3.3.9

6. 4. 2014 - Neděle 23:17 - Nová verze 3.4.0

Co je nového?

- správné načítání data ukrytí a data poslední aktualizace

- zrušení výpisů s časy (případný chybový výpis do souboru ve složce Downloads zůstal)

- doplněny typy logů Un/Archive

- v3.4.0: přizpůsobení novému Locus API, z uživatelského hlediska nic nového

 

Aplikace je ke stažení na www.voldik.cz/geo/locus/LocusAddonGeoget.apk

 

Vypadá to, že zásadní problémy a neduhy jsou již odstraněny a tak bych již vše směřoval k tomu, aby tato verze již šla na Google Play. Prosím tedy o test, zda to dělá to, co chcete, aby to dělalo. :-)

 

TODO:

- naučit addon pracovat s databází obrázků *.imc

- umožnit zpětný zápis změn do databáze - závisí na Locus API, momentálně to neumožňuje

- umožnit filtrování vypočtených keší


Tento příspěvek byl upraven od Voldik: 07 duben 2014 - 12:37

  • 0
\m/

#237 petulinka1

petulinka1

    Advanced Member

  • Moderators
  • 4 035 příspěvků(y)

Publikováno 03 duben 2014 - 15:14

Prosím tedy o test, zda to dělá to, co chcete, aby to dělalo. :-)

Takze to umi popcorn a lustit mysterky?


  • 0

#238 Voldik

Voldik

    Advanced Member

  • Members
  • PipPipPip
  • 424 příspěvků(y)

Publikováno 03 duben 2014 - 15:47

Takze to umi popcorn a lustit mysterky?

No to musíš právě otestovat. :-) Mně to třeba mysterky luští, stačí si tam nastavit tvoji databázi a hned můžu vyrazit do Pardubic  :D  :D 


  • 0
\m/

#239 petulinka1

petulinka1

    Advanced Member

  • Moderators
  • 4 035 příspěvků(y)

Publikováno 03 duben 2014 - 17:14

No to musíš právě otestovat. :-) Mně to třeba mysterky luští, stačí si tam nastavit tvoji databázi a hned můžu vyrazit do Pardubic  :D  :D

Jses si tim nejak moc jistej :D Vetsina z nich uz je stejne jinde. Ale bez popcornu tuhle apku nechci! :D


  • 0

#240 petulinka1

petulinka1

    Advanced Member

  • Moderators
  • 4 035 příspěvků(y)

Publikováno 04 duben 2014 - 8:49

Sakra, ja se tu divim, proc to v tom Locusu tak blbne a az ted mi doslo, ze bych mohla pouzit taky testovaci verzi Locusu :D


  • 0




4 uživatel(ů) prochází toto téma

0 uživatelů, 4 návštěvníků 0 anonymních uživatelů

Reklama