Mobile cu cunostinte de web dev


(Dragoi Ciprian) #1

In ultima vreme ma tot lovesc diverse idei de simple aplicatii mobile si as vrea sa invat minimul posibil pentru a face o aplicatie (ios si android) dar care sa aiba ca si codebase tot ceva web. Daca n-ar fi conexiune sa nu poate fi folosita. Functionalitatile de care am nevoie de pe mobile oricum ar fi cel mult cele de HTML5, locatie si notificari.

Ideile pe care le am se rezuma mai degraba la o varianta responsive a unei web app clasice dar care sa dea feeling-ul de nativ, una care-mi place este cea a celor de la DSU (dispeceratul situatii de urgenta) si la ceva de genul ala de cunostinte as vrea sa ajung.

Am deschis xCode dar tot ce am vazut nu-mi pare familiar cu stilul de webdev.
Intrebarea e “de unde incep”?


(Catalin Iamandei) #2

Si eu ma gandesc sa ma apuc de aplicatii mobile. Angular mi se pare ce-a mai ok alegere pentru mine deoarece este destul de folosit si pe web.


(Daniel Stancu) #3

https://www.nativescript.org Give it a try!


(Adrian Tiberius) #4

Poti sa incerci cu niste framework-uri hibride:

  • Ionic daca-ti place angularjs:
  • ReactNative daca-ti place reactjs:
  • Weex daca-ti place vue.js:
  • altele:

https://cordova.apache.org/
https://phonegap.com/


(Adavidoaiei Dumitru-Cornel) #5

Pentru fani C# puteti crea aplicatii native mobile cross platform cu Xamarin:

https://www.xamarin.com/


(Ionuț Staicu) #6

Dacă vrei doar să-ți faci treaba, mergi pe Cordova & co.

Dacă vrei să înveți un limbaj nou (swift sau objC), vezi pe iTunes U că sunt niște cursuri foarte bune de la Stanford. Probabil găsești ceva și pentru Android.


(Dragoi Ciprian) #7

Ideea e ca nu sunt familiarizat cu niciunl din framework-urile ‘moderne’ de js: react, angular, vue.

pana acum “phonegap” pare ca face ce vreau eu (cateva pagini de html linkuite intre ele si cu js/css) dar daca vrei si build pare ca platesti

cordova cred ca e ce cautam. multumesc de raspunsuri


(Red) #8

Ce aplicație de Android am avut de făcut, am făcut-o în Java.

Nu se mai poartă?


(Ionuț Staicu) #9

Cordova și phonegap sunt (oarecum) compatibile și nu e nevoie de vreun framework anume. La o aplicație am folosit Backbone, la alta am folosit jQuery și la alta jQuery Mobile :smiley: Orice variantă ai alege, va fi nevoie să îți configurezi env (xcode și/sau adb) pentru a putea rula aplicațiile pe mobile.

@RedGuard: ba se poartă, dar uneori e overkill și nu e rentabil să scrii de două ori același cod…


(István F.) #10

React Native e cel mai logic si simplu pentru iOS, e si rapid. (mai rapid ca ionic sau phonegap)
Pe Android un PWA e logic, Tinder, Pinterest, Uber trec pe PWA-uri.

Dar trebuie sa te atentionez ca poate fi greu de facut un MVP cu aceste solutii fara o echipa.


(George Calianu) #11

Daca nu tii neaparat sa faci aplicatie nativa, instalabila, un truc bun (pe care eu il folosesc frecvent) este sa rulezi aplicatia web (creata eventual responsive) atat pe desktop cat si pe dispozitive mobile in Chrome app mode. Pe mobile e acel Add to home screen de unde rulezi ulterior full screen aplicatia. Vezi aici un mic exemplu. Eu am facut asa mai multe mini aplicatii care in mod normal nu meritau efortul dezvoltarii in alte limbaje si tehnologii multi-platforma :sunglasses:


(Dragoi Ciprian) #12

ce varianta de a trimite notificari exista pentru acest “bookmark”?


(George Calianu) #13

Nu am folosit notificari, nu stiu daca functioneaza.
[tip] incearca cu DevForum de exemplu pe un Android/Chrome ca sa vezi cum se comporta.


(István F.) #14

Problema e ca notificarile merg doar pe android/windows. Iti trebuie o aplicatie separata pentru iOS.


(Cosmin Popescu) #15

Eu am incercat sa fac o mica aplicatie pe Android, scrisa in Java. Aplicatia se conecteaza la un serviciu web simplu
scris in PHP si consuma acel JSON generat de ws. Din perspectiva mea, am scris destul de mult cod si am vreo 10 fisiere “.java” pt a obine acele functionalitati. Momentan este in dezvoltare.

Din experienta scrierii acelei aplicatii, mi se pare ca trebuie sa stii ceva ca sa faci o aplicatie pt Android. Aplicatia poate sa utilizeze senzorii telefonului, camera, permisiuni etc

La android, ca si la IOS totusi exista ceva ce se cheama, Webview, care este un fel de browser integrat in aplicatii.

@kleampa iti recomand sa te uiti pe pagina de Dev Android https://developer.android.com/index.html sau pe Dev IOS, sa instalezi Android Studio(este destul de mare si bazat pe IntelliJ) sau Xcode. Cauta tutoriale pe web care iti explica cum implementezi diferite chestii. Vezi de Udemy precum si alte site-uri ofera clase. Recent, parca era pe udemy o bursa pt asa ceva.

Pe IOS nu am experimentat. Ca recomndare, poti folosi limbajul Swift. Mi se pare mai accesibil decat ObjectiveC

Intr-adevar, dupa cum au enumerat colegii, exista React Native, PhoneGap, Telerik Native Script unde folosesti tehnologii web pt crearea aplicatiilor. La Telerik Native Script ai si un simulator si din ce am vazut din tutorialele de pe net si pagina lor, poti sa target-ezi aplicatia pt mai multe platforme,

Spor in dezvoltarea viitoarei aplicatii !
:slight_smile:


(Andrei) #16

Aplicatiile mobile dezvoltate cu tehnologii web gen Cordova really suck.
Solutiile bune sunt cele in care se lucreaza cu controale native. De exemplu Xamarin, dar mai sunt si altele.


(Ionuț Staicu) #17

Poți aduce și argumente?


(Georgiana Gligor) #18

aduc eu :slight_smile: nefiind native, nu au acces la toate functionalitatile de care e nevoie => diverse artificii tehnice care sa impace si capra si varza, in detrimentul mentenabilitatii si performantei

oricum sunt mai lente pt ca se traverseaza nenumarate layere

singura de care stiu ca se compileaza in cod nativ e react native, e posibil sa ma insel si sa mai fie


(Cosmin Popescu) #19

As mai adauga si compatibilitatea cu api-urile oficiale
Ex: Android are Api level 24 care corespunde unei anumite versiuni

Overhead, foarte bine punctat


(Floki) #20

Pentru Android:

  1. Urmareste tutorialul asta (1-2 zile maximum)
  2. Daca te limitezi la VebView, in 1-2 zile faci o aplicatie simpla
  3. Daca vrei sa abordezi AsyncTask, ListView etc., in 1-2 saptamani te descurci. Merita sa explorezi si Deep Linking pe site-ul oficial.

Pentru a pune aplicatiile in Google Play, ai nevoie de un cont de developer; platesti o singura data $25.