Chi ha pubblicato su Google Play applicazioni ibride Android basate su Apache Cordova molto probabilmente può aver ricevuto una segnalazione da parte del Google Play Developer Support simile alla seguente:
Security Alert: Apache Cordova vulnerabilities in your Google Play app
This is a notification that your [PACKAGE NAME], is built on a version of Apache Cordova that contains security vulnerabilities. This includes a high severity cross-application scripting (XAS) vulnerability. Under certain circumstances, vulnerable apps could be remotely exploited to steal sensitive information, such as user login credentials.
You should upgrade to Apache Cordova 3.5.1 or higher as soon as possible. For more information about the vulnerabilities, and for guidance on upgrading Apache Cordova, please see https://cordova.apache.org/announcements/2014/08/04/android-351.html.
Please note, applications with vulnerabilities that expose users to risk of compromise may be considered “dangerous products” and subject to removal from Google Play.
In pratica si viene avvisati che la versione di Apache Cordova (Phonegap) con cui è stata compilata la nostra applicazione contiene falle di sicurezza (nel caso specifico XAS, ossia cross application scripting che è una vulnerabilità lato server derivante da un insufficiente controllo dei dati in input) mettendo a repentaglio la sicurezza di dati sensibili, degli utenti, presenti in remoto. Ci consigliano quindi di aggiornare Apache Cordova ad una versione dove il problema è stato risolto e conseguentemente rieseguire il build ed il release per la successiva pubblicazione onde evitare che, a causa della vulnerabilità, l'applicazione possa essere considerata come "prodotto pericoloso" e quindi soggetta alla rimozione dal Google Play.
E' inevitabile quindi correre ai ripari, per le versioni precedenti alla 3.3.0 rimando alle specifiche sul sito ufficiale cordova.apache.org mentre, per fortuna, dalla versione 3.3.0 gli aggiornamenti alle ultime versioni rilasciate si ottengono con estrema facilità tramite i 2 seguenti comandi da lanciare con la CLI di Windows:
npm install -g cordova
cordova platform update android
Il primo scaricherà ed installerà tutti i pacchetti necessari per l'aggiornamento all'ultima versione, la conferma di procedura correttamente iniziata ci viene data dalla serie di richieste in GET che vengono effettuate (come mostrato in Fig. 1); al termine del processo ci viene comunicata l'ultima versione installata, nel caso specifico (non mostrato in figura) cordova@3.6.3-0.2.13.
C:>npm install -g cordova
Fig. 1 - Apache cordova - Comando per CLI: npm install -g cordova
Terminata l'installazione sarà necessario recarsi nel percorso della cartella del nostro progetto tramite CLI e lanciare il comando di aggiornamento della piattaforma Android.
C:[PERCORSO_PROGETTO]>cordova platform update android
L'aggiornamento può apportare alcune modifche alla strutture dei file e e cartelle nella cartella dedicata alla piattaforma android ma questo non dovrebbe preoccuparci dato che, a test effettuati, la retrcompatibilità viene mantenuta. Una volta effettuato l'aggiornamento della piattaforma si proseguirà con il build della nostra applicazione e la successiva creazione dell'apk per la pubblicazione su Google Play.
Nota: se lanciando il comando di update ci viene restituito l'errore "Current working directory is not a Cordova-based project" è molto probabile che il percorso sulla command line (CLI) in cui stiamo eseguendo il comando non sia quello del progetto. Sarà quindi necessario spostarsi nell'opportuna cartella ed eseguire nuovamente il comando di update. Per una visione più approfondita dell'errore menzionato rimando all'apposito articolo "Current working directory is not a Cordova-based project" della raccolta "Cordova - Errori frequenti e soluzioni".
Nessuno ha ancora commentato questo articolo, fallo tu per primo!
Scrivi un Commento