Diskuze: Nejlepší způsob zpracování dat z webu

Člen

Zobrazeno 14 zpráv z 14.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Ahoj,
Já osobně bych volil 3. způsob, kde si vždy stáhneš data ze serveru a uložíš si je do nějakého místního uložiště (doporučuji se kouknout realm).
Při dotazování serveru, bych si vždy vyclearoval "db", vytvořil nové objekty (podle toho jsonu) a následně je uložil do "db" pomocí realmu. Kdyby náhodou, se zařízení nedokázalo dotázat na server tak v catchi nebo v nějakém callbacku (zaleží co používáš za knihovnu na http requesty) jen vyplníš tvoji activitu pomocí těch objektů, které sis v minulosti uložil do realmu.
Přesto že mi příjde ten to postup nehlehčí má 2 problemy...
Na práci s realmem, mám už připravených pár članků, které momentálně dopisuji.
Pokud jsi píšeš i backend sám, doporučuji se kouknout na Firebase.
Díky. Tvoje řešení je teda spíš ta moje druhá odrážka. Uvažoval
jsem o SQLite, ale Realm by asi neměl být problém.
K tomu zahlcení, backend mám na webhostingu. Těch dotazů budou max vyšší
stovky, to by nemuselo hosting zahltit.
Na Firebase se podívám.
Pokud máš webhosting, tak tě zahlcení asi v takovém množství
uživatelů nemusí zajímat
Co jsem zapomněl napsat je, že Firebase umí pracovat i offline: https://firebase.google.com/…able-offline
To je proč jsem ti ho vůbec doporučil.
Zrovna se na to dívám. Offline? Takže se to kompiluje přímo s apk?
Teď nevím přesně jak to myslíš, ale ukládá si to si to výsledky dotazů/dotazy někam do mezipaměti a když se zařízení nemůže připojit k serveru, tak pouze vezme ty poslední stažené data a zobrazí je. Další věc co to umí je, že když by uživatel například z telefonu, který není připojený k internetu, poslal například nějaký komentář (nějakou update/write akci) tak si to uloží ten dotaz a pošle ho až bude zase připojený k internetu.
Furt to funguje podobně jak nějakej webhosting s db a apičkem, jen na to máš knihovnu a asi to bude lépe optimalizovaný než klasický webhosting.
OK, no ty aplikace budou především data tahat, ne ukládat. Takže asi
půjdu tím prvním řešením bez Firebase.
Zatím to mám namyšlené tak, že minimálně 2 z aplikací budou využívat
na webhostingu parser, který zpracovává webstránku a připravuje JSON. Tam
by se to dalo optimalizovat pravidelným spouštěním a ukládáním na hosting
a taháním těchto uložených dat.
Druhou možností je parsovat data přímo v aplikaci, ale do toho se mi moc
nechce. V PHP jsem totiž mnohem jistější než řešit toto přímo v
aplikaci.
Kdybych to zas řešil v aplikaci, nemusím řešit ukládání. Ale ten
mezikrok si raději udělám.
JSON se velmi lehce parsuje zrovna v Kotlinu/Javě pomocí knihovny Gson. Kód vypadá nějak tak to:
Gson gson = new GsonBuilder().create();
Person p = gson.fromJson(reader, Person.class);
Jak to myslíš "parsovat data z webu"? Že by jsi načetl html a projel to nějakým html selectorem?
Ano, přesně tak. Teď to stejné dělám na hostingu a výsledkem je JSON.
A ten právě chci v aplikaci zpracovávat.
Pokud bych se tomu chtěl vyhnout, asi by to šlo parsovat v Kotlinu přímo v
aplikaci. Ale na to si netroufám, aspoň zatím ne.
A od toho vznikl původní dotaz - jak tohle efektivně dělat .
Určitě to půjde přes: https://jsoup.org/
Ale příjde mi to jako velmi špatný nápad a zvyk, protože:
Konec konců, myslím, že bude určitě i víc důvodů proč většina aplikací pracuje s jsonem a ne s html.
Zobrazeno 14 zpráv z 14.