b64team pisze:
4. Co do bazy danych to sytuacja jest nie do końca jasna.
Z tego co widzę to wszystkie sugestie można sprowadzić do kilku punktów wspólnych :
1. Program ma bazę skrzynek offline którą można zaimportować z gpx lub pobrać/odświeżyć online. Czy ktoś pobierze plik gpx z serwera czy program sam to zrobi przez API, to obciążenie będzie porównywalne ( dla serwera ). Obydwie metody powinny być dostępne
2. Sposób i częstotliwość odświeżania danych powinna być konfigurowalana. Np dane kesza istniejącego w pamięci nie powinny być ściagane online, jeśli nie upłynęło X ( godzin, dni ) od ostatniej aktualixacji .
3. Wyszukiwanie - tutaj jest oczywiście szkopuł, bo przy szukaniu zależy nam zwykle na aktualnych danych, Ale znowu jakaś opcja konfiguracji mogłaby sterować priorytetem: czy najpierw zapytanie online ,czy przeszukanie bazy offline czy jeszcze inaczej.
Generalnie ideałem by było, żeby można było tak ustawić opcje ( i zapamiętywać ich wartośći jako profile ! ), żeby w każdych warunkach wykorzystać to co mamy najlepiej ( szybkie połaczenie, kompletną bazę offline ). Takie szybko przełączane profile konfiguracji ( np na ekranie startowym ) byłyby OK.
Wszystkie aktywne skrzynki z OCPL w postaci GPX zajmują w sumie 30MB, więc mówienie o braku miejsca na karcie to chyba jakiś żart.
Inną sprawą jest efektywność wyszukiwania i innych operacji na takim zbiorze, ale bez wiedzy jaka jest technika przechowywania danych w waszym programie to trudno cokolwiek oceniać/sugerować. Jakakolwiek by jednak nie była, to 10tyś ( zaindeksowanych ) rekordów nie powinno przekraczać możliwości obliczeniowych żadnego telefonu a androidem.
Kompresja nie wydaje się sensowna, bo to wymaga zmian w kodzie OC.pl a i tak większość ludzi będzie pobierać gpx'y z wyszukiwarki na podstawie swoich filtrów.
Z rzeczy które jeszcze zauważyłem , to wyniki wyszukiwania chyba nie są sortowane ani alfabetycznie ani po odległości. Chyba to drugie wydaje się odpowiednie jako opcja domyślna, ale gdyby inne kryteria sortowania były dostępne ( do zmiany w konfiguracji ) to tylko lepiej .