Set cordova cli 6 on xubuntu 15.10

installare node:
$sudo apt-get install nodejs

installare npm, node package manager:

sudo apt-get install npm

Possiamo testare che ci siano, chiedendo la versione:
$node -v
$npm -v

creare un collegamento simbolico per chiamare nodejs con il solo nome: node

sudo ln -s /usr/bin/nodejs /usr/bin/node

non deve rispondere niente il precederente comando.

Installiamo android studio, aggiungendo un repository con il code apposito per ubuntu,
disponibile da https://paolorotolo.github.io/android-studio/ :

$sudo apt-add-repository ppa:paolorotolo/android-studio
$sudo apt-get update
$sudo apt-get install android-studio

Dimentichiamoci di android per un pochino ed intanto procediamo e installiamoci cordova cli, guardiamo qui:

https://cordova.apache.org/docs/en/latest/guide/cli/index.html

Prima cosa vediamo se abbiamo anche git
$sudo apt-get install git

E poi installiamo cordova
$sudo npm install -g cordova

potrebbe essere necessario pulire la cache di node con un

“node cache clean”

Proviamo a vedere se è davvero  installato con “cordova -v”, mi rende il numero della versione che è ora la 6.1.0

Compiliamo la prima app di prova:

$ cordova create hello com.example.hello HelloWorld
$cd hello/

Ora entrando nella cartella hello/www/index.html dentro alla nostra home, troveremo il nostro primo progetto, che possiamo subito vedere da browser.

E’ un template html, e lo script in js che chiede alle API di cordova se c’è un dispositivo mobile, non risponderà.

Quindi rimarrà sempre un grigio: Connecting to Device

Ecco cosa ci permetterà di fare cordova cli

Quindi abbiamo deciso che lo proviamo per il sistema operativo Android.

https://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html#requirements-and-support

Quindi vediamo se abbiamo java:

$java -showversion

Io ho già installato :java version “1.7.0_95”
OpenJDK Runtime Environment (IcedTea 2.6.4) (7u95-2.6.4-0ubuntu0.15.10.2)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)

quindi provo così. (sbagliato)

OK, android studio (che ha finito di installarsi) non funziona:

si lamenta del jdk (java development kit)

Proviamo a vedere se cordova funziona:

$cordova platform add android

$cordova requirements

No, da un sacco di errori:

Failed to find ‘JAVA_HOME’ environment variable. Try setting setting it manually.
Android SDK: not installed
Failed to find ‘ANDROID_HOME’ environment variable. Try setting setting it manually.
Failed to find ‘android’ command in your ‘PATH’. Try update your ‘PATH’ to include path to valid SDK directory.
Android target: not installed
Android SDK not found. Make sure that it is installed. If it is not at the default location, set the ANDROID_HOME environment variable.
Gradle: not installed
Could not find gradle wrapper within Android SDK. Could not find Android SDK directory.
Might need to install Android SDK or set up ‘ANDROID_HOME’ env variable.
Error: Some of requirements check failed

(GIUSTO)Quindi si installa dal ppa per ubuntu. java 8

http://stackoverflow.com/questions/16263556/installing-java-7-on-ubuntu

$sudo add-apt-repository ppa:webupd8team/java
$sudo apt-get update
sudo apt-get install oracle-java7-installer
sudo apt-get install oracle-java7-set-default

OK, riprovo a far partire android studio.

Funziona

Quindi andiamo in

Configure >> SDKmanager

E ci copiato il path dove troveremo i file android che ci interessano

es: /home/mioutente/Android/Sdk

Quindi andiamo a creare il file .bashprofile in home, con l’editor di testo più comodo.

$nano .bash_profile

Questo è il mio file:

export ANDROID_HOME=/home/cri/Android/Sdk/
export PATH=${PATH}:/home/cri/Android/Sdk/platform-tools:/Android/Sdk/tools

Faccio utilizzare il mio file bash_profile:

 source ~/.bash_profile

Quindi provo se funziona:
~/hello$ cordova requirements

Requirements check results for android:
Java JDK: installed .
Android SDK: installed
Android target: installed android-23
Gradle: installed

Bella risposta!

Provo a fargli compilare il progetto android:

cordova build android

BUILD SUCCESSFUL

Total time: 2 mins 51.058 secs
Built the following apk(s):
/home/cri/hello/platforms/android/build/outputs/apk/android-debug.apk

 

OK , ora possiamo fare un cordova android run

Se abbiamo un dispositivo android da connettere con l’usa, in modalità sviluppatore attivata e con il setting: debugging via usb.

Allora, potremo vedere la nostra app Hello che si installa sul dispositivo e la scritta su sfondo verde:

Device is ready

GIT su GANDI!

Dunque, come configurare il repository git che ci spetta per l’uso dell’hosting gandi?!

Eseguire sulla propria macchina in locale:
Cioè, non dalla console SSH connessi alla macchina remota :)
chiaro, no?

$ mkdir albero.redup.xyz
$ cd albero.redup.xyz/
$ git init
Initialized empty Git repository in /Users/redesignnomade/albero.redup.xyz/.git/
$ git remote add origin git+ssh://XXXXXX@git.dc0.gpaas.net/albero.redup.xyz.git
$ mkdir htdocs
$ echo "helloworld" > htdocs/index.html
$ git add htdocs
$ git commit -m "primo index.html prova"
[master (root-commit) d0635ce] primo index.html prova
Committer: RedesignDev 

1 file changed, 1 insertion(+)
create mode 100644 htdocs/index.html
MacBook-Pro-di-Redesign:albero.redup.xyz redesignnomade$ git push origin master
The authenticity of host 'git.dc0.gpaas.net (217.70.180.142)' can't be established.
RSA key fingerprint is SHA256:1Tpwj0UT92ARAGczV2ha6tBE3lQz0uLvBRWCaIPmh6I.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'git.dc0.gpaas.net,217.70.180.142' (RSA) to the list of known hosts.
XXXXXXX@git.dc0.gpaas.net's password:
Counting objects: 4, done.
Writing objects: 100% (4/4), 292 bytes | 0 bytes/s, done.
Total 4 (delta 0), reused 0 (delta 0)
To git+ssh://XXXXXXX@git.dc0.gpaas.net/albero.redup.xyz.git
* [new branch]      master -> master

OK, ora si rebootta l’istanza remota e si dovrebbe trovare sia il git online che i suoi file visualizzati,
quindi l’index con scritto Hello world.

Vero!:

Sgrunt, l’unica pecca è che per lavorarci con qualcuno gli dovrei dare la pasw generaleglobaleuniversale. E questo non è possibile..

vabbhè, però almeno lui può clonarselo in locale e mergiare localmente..

meglio che niente.