Autor Zpráva
ondra256
Profil
Zdravím,

Mám webovou aplikaci v react.js a potřeboval bych udělat ještě mobilní aplikaci pro android i ios. Webová aplikace je dost komplexní a dělat znovu to samé pro android a znovu pro ios by trvalo dlouho a stálo spoustu peněz.

Pokud jsem správně pochopil, tak řešením by bylo použít třeba React Native což lze provozovat na androidu i ios. A pak jsem narazil ještě na pojem PWO aplikace, což znamená že bych to nějak překlopil z té webové do mobilní aplikace a měl v podstatě hned hotovo?

Jenže s tím nemám žádnou zkušenost. Stojí za to se PWO aplikací vůbec zabývat? Nebo je to pomalé, problémové, ... ? Máte s tím někdo zkušenost? Případně neznáte někdo nějakou aplikaci která je PWO a mohl bych si ji zkusit na mobilu? Co všechno obnáší vygenerovat PWO aplikaci? Je to v reálu fakt jednoduché nebo je tam spousta nějakých úskalí?


Děkuju za každý poznatek :-)
Keeehi
Profil
Tak pokud máš ten web responzivní, že se to v mobilním prohlížeči dobře používá a tvým cílem je to jen obalit do "aplikace" aby člověk nemusel zadávat url do prohlížeče ale měl na to ikonku v mobilu, pak to není nic těžkého.
Prakyticky si vytvoříš čistý projekt nové aplikace a přes celou plochu obrazovky aplikace dáš WebView komponentu. Což je vlastně webový mobilní prohlížeč, jen ořezaný o všechny prvky okolo, takže tam máš jen tu zobrazovací plochu. Té komponentě dáš url kterou má načíst a máš "hotovo".
Pokud chceš něco více (fungování offline, práci se soubory, notifikace ...) musíš si to doprogramovat.
Nicméně tyhle funkcionality okolo bude řešit spousta dalších podobných aplikací. Takže bych se nedivil, kdyby existoval nejaký generátor, který by ti je zvládl doplnit.
Taky při googlení jsem narazil na firmy, které tohle udělají za tebe. Prakticky jim pošleš url a oni by měli být schopni ti celkem rychle vytvořit aplikaci. Jelikož ty komponemty zajišťující ty další funkčnosti kolem WebView mají dopředu připravené.
N71
Profil *
Tradiční PWA je javascriptová single-page aplikace, kterou doplníš o další metadata, manifest a většinou i service worker, který se postará o offline funkčnost. V závislosti na tom, jak cílová platforma PWA podporuje, se k tomuto "webu" po jeho "instalaci" (čti "umístění odkazu na plochu") pak více či méně chová jako k aplikaci, takže například nezobrazuje ovládací prvky, nesdílí data s normálním browserem a umožňuje lepší přístup k některým funkcím.
ondra256
Profil
Tak jsem to zkusil a na androidu je to super. Jenže na iOS to vůbec žádnou hlášku, která by pobídla člověka k instalaci, nezobrazí. A ikdyž jsem dodělal tlačítko které by mělo spustit instalaci tak ani tak to nic neudělá. Na androidu funguje i tlačítko skvěle.

Nevíte náhodou někdo zda iOS podporují PWO nebo ne? Jsem z toho trochu zmatený, někde jsem našel, že ano, někde ne.
blaaablaaa
Profil
ondra256:
V iOS to jde myslím jen v Safari a je potřeba dát sdílet stránku a pak přidat na homescreen. Jinak podpora API je tam hlavně ohledně práce na pozadí a různých web push docela slabá :(
N71
Profil *
Instalační banner iOS v tuto chvíli nepodporuje. A ani nějaké další systémové API nad rámec běžného webu. Celkově nejvíc využitelný je zde ten service worker pro síťovou komunikaci, pomocí kterého můžeš zajistit prakticky 100% offline funkčnost. A samozřejmě šikovné je i zobrazení na skutečný fullscreen, takže je možné udělat něco, co opravdu vypadá jako aplikace.
JsonKody
Profil
blaaablaaa, ondra256:
Co je sakra PWO?? :)
Nějaký vymyšlený termín?
Doufam ze mluvíme o PWA.

Pokud jde o PWA je to normální web s přidanými funkcemi takze se da pridat na plochu (telefonu, PC atd) kde se dokáže tvarit jako aplikace, ma ikonku, dokáže si prednacist a udrzet data do offline atd. Jako napad to ma mnoho výhod (napr prakticky instantní "instalaci"). Prosazoval to především google a microsoft a apple to mozna proto schválně zadíval. Jak to podporuje ted nevim, ale dlouhou dobu to nepodporoval. Oproti tomu je React Native ověřená technologie ve které mnoho firem vyrabi software pro obe mobilní platformy. Nevyhoda je ze oproti webu (PWA - progresivní webová aplikace) je ho potřeba asi vice upravit.

PS: tak jsem zchecknul situaci s pwa/apple v roce 2023 a nevidim zadny problem. Vše si vygooglis. Btw ještě zajímavá alternativa může být Flutter, ale tam budeš muset používat lehce jiny jazyk (Dart - něco mezi Javou a JS) a celkově struktura je jina než zapis v html.
N71
Profil *
N71:
Instalační banner iOS v tuto chvíli nepodporuje. A ani nějaké další systémové API nad rámec běžného webu.

Tady bych snad ještě doplnil sám sebe, že v nedávném iOS 16.4 se docela hnuly ledy a PWA už umí přijímat Push notifikace včetně podpory číselného badge na ikoně. Nově podpořené jsou taky API pro zabránění zhasnutí a uzamčení orientace displeje.

Soudím, že PWA už je zajímavou možností pro náhradu "aplikace" i na iPhonech. Rozhodně čistší než webview-based binárky.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0