App per xm, prende i contenuti dal sito e te li salva nel cellulare. ## Environment ## ### NodeJs ### add gpg key using `curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -` add APT repo (verify/create) nodesource.list file in /etc/apt/sources.list.d with: ``` deb https://deb.nodesource.com/node_6.x jessie main deb-src https://deb.nodesource.com/node_6.x jessie main ``` Alternative setup (it supports Kali, Debian, Mint, ...): `sudo curl -sL https://deb.nodesource.com/setup_6.x | bash -` (it supports Kali, Debian, Mint, ...) Cleanup: `apt-get purge nodejs` Refresh: `apt-get update && apt-get install nodejs nom` ADK (android developer kit) e ### Cordova CLI ### Cordova si intalla con npm, packager di nodejs: `npm install -g cordova` ### Android tool ### ADK (android developer kit) P.S. Con l'ultima versione di Android Studio è necessario scaricare a mano gli [android tools](https://dl.google.com/android/repository/tools_r25.2.3-linux.zip). ### Appunti ### http://www.digitigrafo.it/module/1249 ## Build del progetto ## ### Android ### `cordova platform rm android` Per rimuovere la piattaforma vecchie di Android `cordova platform add android` Per aggiungere la piattaforma nuova. Durante questa operaionze i seguenti plugin verranno auto installti: * cordova-plugin-compat * cordova-plugin-file * cordova-plugin-media * cordova-plugin-whitelist * cordova-sqlite-storage * phonegap-plugin-push ``` cordova plugin add cordova-plugin-network-information \ cordova-plugin-x-socialsharing \ cordova-plugin-splashscreen ``` Forse non serve, ma l'howto di [cordova-plugin-x-socialsharing](https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin) dicono di farlo: `cordova prepare` Per installare il plugin sulla rete che non viene installato in automatico `cordova run android` Per lanciare l'emulatore Android con l'applicazione. Ovviamente si deve aver configurato il proprio environment correttamente. ## Aggiornamento Siam passati allal versione di Cordova 9 e la versione della piattaforma Android 8, per verificare, nella cartella del progetto IloveXM24: $ cordova -v 9.0.0 (cordova-lib@9.0.1) $ cordova platform list Installed platforms: android 8.0.0 I plugin così: $ cordova plugin list cordova-plugin-compat 1.2.0 "Compat" cordova-plugin-file 4.3.3 "File" cordova-plugin-media 3.0.1 "Media" cordova-plugin-network-information 1.3.4 "Network Information" cordova-plugin-splashscreen 4.0.3 "Splashscreen" cordova-plugin-whitelist 1.3.3 "Whitelist" cordova-plugin-x-socialsharing 5.1.8 "SocialSharing" cordova-sqlite-storage 2.0.4 "Cordova sqlite storage plugin" es6-promise-plugin 4.2.2 "Promise" phonegap-plugin-push 1.9.4 "PushPlugin" E le API dell'sdk Android, ora hanno target 28! Per aggiornarle, da linea di comando, nella cartella dove avete l'ambiente android, io ce l'ho in home/.android/ $ ./android update sdk Accettate le malvagie licenze e scaricate. Poi il build pare funzionare :) yhuuu! Non ricordo se era bloccante o no, ma ci siamo fatte una copia dell AndroidManifest.xml dopo aver aggiunto la platform, così: cd platforms/android/app/ cp src/main/AndroidManifest.xml AndroidManifest.xml ## build app cordova build android --release --buildConfig=myBuildConfig.json ### iOS ### Installando `phonegap-plugin-push` se si incontra questo errore: ``` Installing "phonegap-plugin-push" for ios *Failed to install 'phonegap-plugin-push':undefined* Error: CocoaPods was not found. Please install version 1.0.1 or greater from https://cocoapods.org/ ``` Occore installare `CocoaPods` come descritto sulla [documentazione del plugin](https://github.com/phonegap/phonegap-plugin-push/blob/master/docs/INSTALLATION.md#ios-details) ## Download ## ## Google Play ## Solo per chi ha un account google. Sconsigliamo l'installazione dal Google Play perche' google come multinazionale profila ogni tuo gusto e l'utilizza a scopo commerciale. In pratica ti tratta come merce per accaparrarsi profitto. Se ti e' possibile quindi utilizza fdroid. https://play.google.com/store/apps/details?id=xm24.digitigrafo.it ## Repository Privato Fdroid ## Repository gestito da hacklabbo, non e' il repository fdroid ufficiale. Per poter utilizzare questo repository devi comunque scaricare l'applicazione [fdroid](https://f-droid.org/) e aggiungere questo repository ed attivarlo nella configurazione dell'applicazaione. E' un operazione piuttosto semplice da effettuare. https://fdroid.hacklabbo.indivia.net/ P.S. Per chi sviluppa: ad ogni commit sarebbe opportuno aumentare l'ultima cifra della versione in config.xml (riga 2: version=1.0.2 -> version=1.0.3) in modo che fdroid riconosca e proponga l'aggiornamento. ## TODO, ISSUE e FEATURE ## Usiamo l'[issue tracker](https://git.lattuga.net/hacklabbo/Ilovexm24/issues) non il wiki.