·
Atpakaļ uz blogiemMobilās lietotnes
Mobilās lietotnes izstrāde: PWA vai React Native
PWA ir piemērota, ja lietotni lieto darbinieki, partneri vai klienti konkrētam darbam un pietiek ar pārlūka funkcijām. React Native ir vajadzīgs, ja lietotnei jāizmanto tālruņa funkcijas, kuras pārlūks nedod, vai tā jāpublicē App Store un Google Play. Abos gadījumos viena koda bāze kalpo gan iOS, gan Android.
Kas ir PWA (Progressive Web App)?
PWA (Progressive Web App) ir tīmekļa lietotne, ko var instalēt tālrunī vai datorā tieši no pārlūka un kas pēc instalēšanas atveras kā atsevišķa lietotne ar savu ikonu sākuma ekrānā. PWA tiek izstrādāta ar tīmekļa tehnoloģijām — HTML, CSS un JavaScript vai TypeScript — un darbojas pārlūka dzinējā, tāpēc tai ir viens kods tālrunim un datoram. Service worker ļauj PWA saglabāt failus kešatmiņā, daļēji strādāt bezsaistē un saņemt push paziņojumus. React Native ir atvērtā koda ietvars, kurā lietotni raksta JavaScript vai TypeScript valodā, bet saskarne tiek attēlota ar iOS un Android vietējiem komponentiem. React Native lietotni instalē no App Store vai Google Play, un tai ir piekļuve tālruņa funkcijām, kuras pārlūks nedod. Abas pieejas ļauj uzturēt vienu koda bāzi abām mobilajām platformām; atšķiras izplatīšanas veids, piekļuve ierīcei un ceļš, pa kuru atjauninājumi nonāk pie lietotāja.
Kāda ir galvenā atšķirība starp PWA un React Native?
Galvenā atšķirība starp PWA un React Native ir tajā, kur lietotne darbojas: PWA darbojas pārlūka dzinējā un tiek atvērta no saites, bet React Native lietotne ir instalējama mobilā lietotne ar iOS un Android vietējiem komponentiem. No šīs atšķirības izriet piekļuve ierīcei, publicēšanas ceļš un atjauninājumu veids.
PWA ir viena tīmekļa lietotne visām ierīcēm. To pašu PWA kodu atver datora pārlūkā, planšetē un tālrunī, un saskarne pielāgojas ekrāna izmēram. Lietotājs PWA var pievienot sākuma ekrānam, un pēc tam tā atveras bez pārlūka adreses joslas.
React Native lietotnei ir viena koda bāze iOS un Android, bet no tās tiek izveidotas divas atsevišķas lietotnes, kuras publicē katru savā veikalā. Datora versijai React Native projektā parasti vajag atsevišķu tīmekļa saskarni, lai gan daļu loģikas un servera daļu var izmantot atkārtoti.
Mobilo lietotņu izstrādes lapā social.tech nosauc abas pieejas: lietotnes iOS un Android tiek izstrādātas kā PWA vai ar React Native, un abos gadījumos tās darbojas abās platformās no vienas koda bāzes.
Kad PWA ir piemērotāka izvēle?
PWA ir piemērotāka, ja lietotāji ir jūsu darbinieki, partneri vai klienti, kas lietotni atver konkrētam darbam, un lietotnei pietiek ar pārlūka funkcijām: kameru, atrašanās vietu, failiem un push paziņojumiem. Šādā gadījumā lietotņu veikals nav vajadzīgs, un viena versija kalpo tālrunim un datoram.
Darba lietotnes ir tipisks PWA gadījums. social.tech mobilo lietotņu lapā kā PWA piemēri nosaukti HWI, Bookelle un WBM. HWI ražotnē operators tālrunī vai planšetē veic pieņemšanu, ražošanu un nosūtīšanu, un etiķetes tiek drukātas uz Zebra printera. Bookelle klients piesakās vizītei, maksā un saņem QR biļeti tālrunī.
Weepla nedēļas plānotājs ar balss ievadi ir social.tech pašu PWA. Weepla izstrādāta ar React, TypeScript, Vite un Supabase, un lietotni var pievienot telefona sākuma ekrānam. Darbvirsmā Weepla rāda nedēļas režģi, bet telefonā — atsevišķu saskarni ar vilkšanas žestiem; uzdevumu var ierunāt, un atgādinājumi par dienas uzdevumiem tiek sūtīti e-pastā.
PWA atjauninājumi nonāk pie lietotājiem bez veikala pārskatīšanas: jaunā versija tiek publicēta serverī, un lietotājs to saņem nākamajā atvēršanas reizē. Darba lietotnēm tas nozīmē, ka visi darbinieki strādā ar vienu un to pašu versiju un nevienam nav jāatjaunina lietotne ar roku.
Kad vajadzīga React Native lietotne?
React Native lietotne ir vajadzīga, ja lietotnei jāizmanto tālruņa funkcijas, kuras pārlūks nedod, vai ja lietotājiem tā jāatrod App Store un Google Play. Bieži tās ir patērētāju lietotnes, kuras cilvēki meklē veikalā un lieto savā brīvajā laikā, nevis darba vajadzībām.
Tālruņa funkcijas, kurām pārlūka piekļuve ir ierobežota vai nav pieejama:
- Darbs fonā, piemēram, atrašanās vietas sekošana, kad lietotne nav atvērta.
- Bluetooth un NFC ierīces, īpaši iOS, kur pārlūks šīm ierīcēm piekļuvi nedod.
- Dziļāka integrācija ar operētājsistēmu: logrīki, kontakti, kalendārs, veselības dati.
- Lieli bezsaistes datu apjomi, kuru glabāšanas ilgumu nedrīkst noteikt pārlūks.
- Publicēšana App Store un Google Play kā daļa no lietotnes izplatīšanas.
Kurš social.tech projekts izmanto React Native un kāpēc tas ir patērētāju gadījums?
C'mon pasākumu lietotne ir social.tech projekts, kas izstrādāts ar React Native un darbojas kā mobilā lietotne iOS un Android. C'mon ir patērētāju lietotne: cilvēki to lieto savā brīvajā laikā, lai atrastu lokālus pasākumus pēc interesēm, sazinātos ar dalībniekiem un satiktu domubiedrus.
C'mon ir MVP platforma lokālu pasākumu organizēšanai. C'mon lietotnē ir pasākumu lenta ar kategoriju filtrēšanu, ģeolokācijas meklēšana kartē, pasākumu izveide ar fotoattēliem un dalībnieku pārvaldību, iebūvēts čats pasākumu dalībniekiem un push paziņojumi par jauniem pasākumiem atbilstoši interesēm.
C'mon tehnoloģiju sarakstā bez React Native ir TypeScript, Node.js, PostgreSQL, Firebase, push paziņojumi, Google Maps API un REST API. C'mon projekta lapā lietotne aprakstīta kā pilnvērtīga iOS un Android lietotne ar push paziņojumiem, čatu un ģeolokāciju.
C'mon un HWI atbilst iepriekš aprakstītajam dalījumam pēc lietotājiem. HWI lietotāji ir ražotnes darbinieki, kuri lietotni atver darba vietā, un HWI ir PWA. C'mon lietotāji ir plaša publika, kas pasākumus meklē savā tālrunī, un C'mon ir React Native lietotne.
Kā PWA un React Native atšķiras publicēšanā un atjauninājumos?
PWA publicē savā domēnā, un lietotājs to instalē no pārlūka, bet React Native lietotni publicē App Store un Google Play, kur katra versija iziet veikala pārskatīšanu. Tāpēc PWA izmaiņas nonāk pie lietotājiem bez starpnieka, bet React Native lietotnei ir vieta veikalā, kur lietotāji to var atrast.
React Native publicēšanai vajag izstrādātāja kontus Apple un Google veikalos, lietotnes aprakstu, ekrānuzņēmumus un privātuma informāciju. social.tech mobilo lietotņu procesā publicēšana App Store un Google Play ir atsevišķs solis pēc testēšanas, un pēc tās seko tehniskais atbalsts un atjauninājumi.
React Native lietotnes atjauninājums sasniedz lietotāju, kad viņš instalē jauno versiju no veikala. Daļu izmaiņu JavaScript kodā var piegādāt bez jaunas veikala versijas, ja projektā izmanto atjauninājumu servisu, piemēram, Expo; izmaiņām vietējā kodā vajag jaunu versiju veikalā.
PWA var publicēt arī Google Play, iepakojot to kā Trusted Web Activity. Trusted Web Activity ļauj Android lietotājiem atrast PWA veikalā, bet saglabā vienu tīmekļa koda bāzi.
Push paziņojumi darbojas abās pieejās. iOS ierīcē PWA push paziņojumus saņem tikai tad, ja lietotājs PWA ir pievienojis sākuma ekrānam, tāpēc darba lietotnēm pievienošana sākuma ekrānam jāiekļauj darbinieku apmācībā.
| Īpašība | PWA | React Native |
|---|---|---|
| Kur darbojas | Pārlūka dzinējā | Kā iOS un Android lietotne ar vietējiem komponentiem |
| Instalēšana | No pārlūka, pievienojot sākuma ekrānam | No App Store vai Google Play |
| Koda bāze | Viena tālrunim un datoram | Viena iOS un Android; datoram parasti atsevišķa tīmekļa saskarne |
| Atjauninājumi | Serverī; lietotājs saņem nākamajā atvēršanā | Jauna versija veikalā; daļa JavaScript izmaiņu ar atjauninājumu servisu |
| Veikala pārskatīšana | Nav, ja PWA nepublicē Google Play | Katrai versijai |
| Push paziņojumi | Jā; iOS — pēc pievienošanas sākuma ekrānam | Jā |
| Kamera un atrašanās vieta | Jā, ar pārlūka atļauju | Jā, ar operētājsistēmas atļauju |
| Bluetooth, NFC, darbs fonā | Ierobežoti vai nav pieejami, atkarīgi no pārlūka | Pieejami caur vietējiem moduļiem |
| Bezsaistes dati | Kešatmiņa un pārlūka krātuve | Ierīces krātuve |
| social.tech projekti | HWI, Bookelle, WBM, Weepla | C'mon |
Kā izvēle starp PWA un React Native ietekmē izstrādes laiku un izmaksas?
PWA parasti prasa mazāk darba nekā React Native lietotne, jo viena versija kalpo tālrunim un datoram un nav veikala publicēšanas soļa. React Native lietotnei klāt nāk testēšana uz iOS un Android ierīcēm, veikalu prasības un, ja vajag datora versiju, atsevišķa tīmekļa saskarne.
Abas pieejas samazina darbu salīdzinājumā ar divām atsevišķām lietotnēm, kas rakstītas Swift valodā iOS un Kotlin valodā Android, jo kods abām platformām ir viens. social.tech mobilo lietotņu lapā viena koda bāze abām platformām ir nosaukta kā veids, kā samazināt izstrādes laiku un izmaksas.
social.tech publicētie termiņi mobilajām lietotnēm: vienkārša lietotne var tikt izstrādāta 2-3 mēnešos, vidēji sarežģīta 4-6 mēnešos, un kompleksa lietotne ar daudzām funkcijām var aizņemt 6-12 mēnešus. Par cenu mobilo lietotņu lapā teikts: «Cenas sākas no €5,000 vienkāršām lietotnēm.» Precīza cena ir atkarīga no funkcionalitātes, dizaina prasībām un integrācijām.
Mobilās lietotnes izmaksas galvenokārt nosaka funkcijas: ekrānu skaits, lietotāju lomas, servera daļa, integrācijas un dizains. Izvēle starp PWA un React Native maina ierīču testēšanas un publicēšanas apjomu, bet šo pamatdarbu nepadara mazāku vai lielāku.
Kurus jautājumus uzdot pirms izvēles starp PWA un React Native?
Pirms izvēles starp PWA un React Native atbildiet uz diviem jautājumiem: kas būs lietotāji un kuras tālruņa funkcijas lietotnei vajadzīgas. social.tech šo izvēli izdara kopā ar klientu pēc tā, kas lietotājiem jādara un kur viņi to darīs; abi jautājumi ir par lietotājiem, nevis par tehnoloģiju.
Ja vairums atbilžu uz tālāk uzskaitītajiem jautājumiem norāda uz darbiniekiem, datoru un pārlūka funkcijām, PWA parasti ir pietiekama. Ja atbildes norāda uz plašu publiku, darbu fonā vai Bluetooth ierīcēm, React Native ir pamatotāka izvēle.
Jautājumi, kas palīdz izvēlēties:
- Vai lietotāji ir darbinieki un partneri vai plaša publika, kas lietotni meklēs veikalā?
- Vai lietotne jālieto arī datorā?
- Kuras ierīces funkcijas vajadzīgas: kamera, atrašanās vieta, Bluetooth, NFC, darbs fonā?
- Vai lietotnei jāstrādā bezsaistē, un cik daudz datu tai jāglabā ierīcē?
- Cik bieži mainīsies funkcijas un cik ātri izmaiņām jānonāk pie visiem lietotājiem?
- Vai lietotāji instalēs lietotni no veikala, vai pietiek ar saiti?
Biežāk uzdotie jautājumi
Kopsavilkums
- PWA darbojas pārlūka dzinējā un tiek instalēta no saites; React Native lietotne tiek instalēta no App Store vai Google Play.
- PWA der darba lietotnēm darbiniekiem, partneriem un klientiem, ja pietiek ar pārlūka funkcijām; social.tech piemēri ir HWI, Bookelle, WBM un Weepla.
- React Native ir vajadzīgs, ja lietotnei jāizmanto tālruņa funkcijas, kuras pārlūks nedod, vai jābūt veikalā; social.tech piemērs ir C'mon.
- Abas pieejas izmanto vienu koda bāzi iOS un Android; React Native lietotnei klāt nāk veikalu publicēšana un pārskatīšana.
- Izvēli nosaka lietotāji un vajadzīgās ierīces funkcijas, nevis tehnoloģija pati par sevi.
Izvēlēsimies pieeju jūsu lietotnei
Pastāstiet, kas būs lietotāji un kas viņiem lietotnē jādara. Kopā izvēlēsimies starp PWA un React Native.
Sazināties