Android 4 – Errata Corrige

Capitolo 1

Pag.10: Se il nome dell’azienda e’ del tipo www.miaazienda.co.uk il relativo dominio e’ il seguente uk.co.miaazienda.android e non co.uk.miaazienda.android come erroneamente scritto

Pag.15: Il nome della classe e’ EncapsulatedPoint2D e non semplicemente Point2D. Questo e’ infatti il nome del costuttore.

Pag.80: Se il precedente disponeva di 8 pixel per 1 mm ora il nuovo display ne avrà 12. Se il precedente disponeva di 8 pixel per 10 mm ora il nuovo display ne avrà 12.

Pag.94: Quartultima riga un typo. Ovviamente e’ Infine al posto di Infime.

Pag.116: Il listato a cui si fa riferimento è quello contenuto nel file activity_menu.xml mentre quello corretto è quello nel file activity_main.xml. I due listati descrivono comunque due layout dello stesso tipo che si differenziano per le label dei bottoni.

Pag.137:
In questo file ci sono solamente risorse di tipo color per cui la seguente definizione

<string name=”error_message_color”>@color/red</string>

va sostituita con la seguente

<color name=”error_message_color”>@color/red</color>

Capitolo 10: L’implementazione corretta del Singleton LoginService manca del costruttore privato.

private LoginService(){}

 

70 thoughts on “Android 4 – Errata Corrige

    • Ti ringrazio per la segnalazione. L’errore non e’ nella mancanza del void ma nel nome della classe che e’ appunto EncapsulatedPoint2D. Il metodo cui fai riferimento non ha tipo di ritorno ( e quindi non ha void) in quanto si tratta del costruttore.

  1. Salve,
    un piccolo problema sul capitolo 2. Non è un errore ma comunque a causa di un aggiornamento di android studio presuppongo che i passaggi siano cambiati.
    In sostanza nel creare il progetto iniziale di UGHO si creano automaticamente i file fragment, anche seguendo dettagliatamente i 3 semplici passaggi. Così risulta difficile seguire il codice e il libro, perchè discutono su due binari diversi. Come fare per non farli generare automaticamente, se uno non li vuole?
    grazie

    • In effetti adesso Android Studio aggiunge direttamente i Fragment cosa che prima non faceva. Si tratta comunque di una buona prassi per poter poi facilemnte adattare l’applicazione all’utilizzo nei tablet. Sempre in questo sito, e su github, sto cercando (tempo permettendo) di aggiornare il progetto alla ultima versione di Android Studio. Il consiglio potrebbe essere quello di andare avanti con il testo fino alla descrizione dei Fragment quando il codice creato ora da AS diventerà quindi comprensibile. non è infatti possibile, almeno al momento, impedire ad AS la generazione di questi file se non creando l’attività come normale classe ricordandosi di registrarla poi nell’AndroidManifest.xml.

      Saluti
      Massimo Carli

  2. Buonasera,
    intanto complimenti per l’ottimo libro è davvero appasionante. Ho solo un piccolo problema, io utilizzo la versione 0.4.3 di AS, sono arrivato al capitolo riguardante la splashscreen e non appena aggiungo la riga android:theme=”@android:style/Theme.Light.NoTitleBar.Fullscreen” l’applicazione non ne vuole sapere di avviarsi e l’AVD mi mostra un errore che mi dice che l’applicazione è stata sfortunatamente fermata. AS oltretutto mi restituisce il seguente errore Unable to start activity ComponentInfo{it.francescogrosselle.ugho/it.francescogrosselle.ugho.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. Credo ovviamente sia un problema di incompatibilità tra le API e il tema usato ma non so come risolverlo. Scusi se ho scritto qui ma non sapevo dove altro scrivere.

    • Buongiorno Francesco,
      Ti ringrazio per i complimenti In caso di problemi con i temi nella maggior parte dei casi si tratta di un problema legato alla versione. Questo significa che devi utilizzare i qualificatori -vXX per le risorse di tipo style in modo che ogni versione possa utilizzare i tempi di cui dispone.

      Saluti
      Massimo

  3. salve,
    io sono arrivato al capitolo 3 pag.88 “creazione di una nuova activity” siccome ho ricevuto l’aggiornamento di android studio 0.4.0 cliccando con il destro sul package dell’applicazione e facendo NEW>ANDROID COMPONENT non so che tipo scegliere per la “SPLASH ACTIVITY”.
    Quale mi consigliate?
    Grazie

    • Buongiorno,
      la Splash Activity e’ una classica Blank Activity che contiene infatti un semplice layout che non prevede, nella maggior parte dei casi, la creazione di un Fragment.

      Saluti
      Massimo

  4. Salve,
    ho notato questa errore: a pagina 15 getXXX() e setXXX() anziché getX() e setX() a riga 29 e 30 rispettivamente.
    Sempre a pag15 il nome nome corretto del metodo è Point2D o è giusto come è scritto EncasulatedPoint2D?

  5. Buongiorno,
    penso che a seguito dell’ aggiornamento AS già segnalato da altri sia cambiato anche la modalità di aggiungere una nuova activity come indicato a pag 87/88.
    Come si aggiungono ora?
    grazie
    Alessandro

    • Ciao Alessandro,
      ora l’aggiunta di una Activity e’ leggermente piu’ complessa e prevede la selezione del template e quindi l’inserimento delle stesse informazioni che si inseriscono per l’Activity principale in fase di creazione del progetto. Non dovrebbero esserci difficolta’ ma presto scrivero comunque un piccolo post al riguardo.
      M.

  6. Salve, pagina 80 penultima riga credo manchi uno zero:
    “Se il precedente disponeva di 8 pixel per 1[0] mm ora il nuovo….”

  7. Mamma mia, il capitolo 3 dal paragrafo “Attività di gestione della prima esecuzione” è ridotto proprio uno schifo. C’è un enorme confusione nei nomi dei layout activity_main e activity_menu, c’è una parte in cui parla della classe LoginActivity “che abbiamo già creato” ma di cui invece non se ne parlava ancora, c’è una parte in qui mi dice cosa inserire nel layout “activity_login” (di cui non si fa accenno alla sua creazione), cioè una Text View e un Button. Ecco che poco dopo si dice di modificare questi componenti nella classe LoginActivity (senza ricordare di definirli e usare findViewById) che adesso sono 2 Edit Text??!!!

    • Buongiorno,
      il listato riportato a pagina 116 è infatti quello sbagliato. Si fa riferimento a android_main.xml mentre viene riportato android_menu.xml anche se si tratta di due listati praticamente uguali. Mi scuso comunque per l’errore. Mi dispiace per lo “schifo” che comunque, come detto più volte, è di difficile comprensione se non seguito tenendo sempre sott’occhio i listati che possono essere scaricati QUI

      Saluti
      Massimo Carli

      • Grazie mille dei chiaramenti mi scuso per aver definito schifo quella parte del libro, xke il libro è veramente ottimo.

  8. Salve,
    a pag. 102 nel Capitolo 3 ricevo delle segnalazioni di errore quando introduco il WeakReference in particolare non riesce a risolvere .
    Come posso superare l’inconveniente?
    Grazie e buona giornata.

    • Buongiorno,
      la classe WeakReference è nel package java.lang.ref che deve essere importato. Le consiglio comunque di aiutarsi con i listati che può scaricare dal seguente LINK

      Saluti
      Massimo Carli

    • Buongiorno,
      la ringrazio della segnalazione. Il progetto richiesto è nella sezione download.

      Saluti
      Massimo Carli

  9. a pag. 88 fig.3.19 creazione di un’activity con new android compnent.
    Tale funzione mi sembra non esista più, io comunque non la trovo.

    • Ciao Giovanni,
      AS si sta evolvendo molto velocemente ed alcune funzioni sono state sostituite da altre che dovrebbero comunque essere molto piu’ intuitive.

      Saluti
      Massimo

      • Non mi sembra una risposta soddisfacente. Il libro (che ho acquistato pochi giorni fa) è, allo stato attuale, veramente difficile da seguire a causa degli aggiornamenti avvenuti in Android Studio. Credo sarebbe opportuno un aggiornamento generale, altrimenti (specie per chi è neofita come me) diventa quasi inutilizzabile.

        Per Giovanni:
        Col tasto destro devi selezionare
        New -> Activity -> Blank Activity

        E poi devi dare un nome di Layout diverso da quello che ti propone il libro, perchè nel nostro caso è già stato specificato. Questo è quello che ho capito io.

        Spero che l’autore sia più chiaro e preciso nell’aiutarti.

        • Ciao Nicola,
          capisco il tuo problema ma penso che la cosa piu’ importante non sia quella di come usare Android Studio ma di capire quelli che sono i concetti della programmazione Android. Se devi creare una Activity poco importa se devi usare un wizard di AS (io ad esempio non lo faccio mai) o se devi creare una classe che estende Activity. Se avessi dovuto aggiornare il libro ad ogni aggiornamento di AS penso sarei arrivato alla versione 20 🙂 Cerchero’ di gestire gli aggiornamento di AS in qualche modo nel mio sito.
          Saluti
          Massimo

  10. Carissimo Massimo Carli ,stò “spolpando” il suo Libro “Android 4 guida per lo sviluppatore ” è un bel libro ma non riesco a trovare su Android Studio ciò che descrive a pag.70, i Qualificatori MCC e MNC , dove si trovano? 🙂

  11. Buon giorno Sign. Carli , ho comprato il suo libro e lo trovo molto chiaro e preciso anche se la parte in java l’ho trovato un pò complicata…le volevo chiedere… a pagina 70 lei parla dei qualificatori MCC e MNC , ma non riesco a trovarli,come fare? sicuro di una sua risposta,la saluto 🙂

    • Buongiorno,
      la ringrazio per i complimenti. I qualificatori relativi a MCC e MNC vengono raramente utilizzati. In ogni caso, se prova a creare una nuova “Android Resource Directory”, si tratta del campo relativo alla voce “Network Code”.

      Saluti
      Massimo Carli

      • Grazie Signor Massimo per la risposta 🙂 le volevo chiedere un’altra cosa,che mi sfugge…quando in principio del lavoro,impostiamo il nome della App ,ci viene chiesto pure che tipo di Api scegliere,ecco la mia domanda è : Se io imposto come minima l’ Api 3.0 , poi una volta dentro il progetto,devo necessariamente scaricare le libreirie relative ad Android 3.0 tramite sdk?

        • Buongiorno,
          la versione minima e’ importante quando si installa l’applicazione dal market mentre quella che conta per lo sviluppo e’ quella di riferimento ovvero la targetSdkVersion.

          Saluti
          Massimo

          • ho capito 🙂 però forse mi sono espresso male, se io volessi fare un’app anche per smartphone o tablet datati devo scaricare pure le librerie dei vecchi android?

          • No problem,
            se lei sviluppa una applicazione che utilizza come API di riferimento (e quindi targetSdkVersion) la 14 per intendersi, l’applicazione può comunque essere eseguita su un dispositivo di versione inferiore (es: la 8). In questo caso quello che conta è la versione minima supportata ovvero quello specificato attraverso a proprietà minSdkVersion che deve comprendere la versione del dispositivo e quindi nel nostro caso deve essere almeno la 8 (il Play Market la filtrerebbe per versioni inferiori ). Il problema in questo caso si pone quando nella applicazione utilizza delle API o classi che che sono presenti nella 14 ma non nella 8. In questo caso è responsabilità dell’applicazione fare in modo che questo venga comunque gestito. Gli editor sollevano dei warning quando questo succede ed è appunto responsabilità dello sviluppatore fare in modo che tutto funzioni. Il caso tipico è quello della ActionBar per la quale si aveva la necessità di ActionBarSherlock o della nuova ActionBarCompat che fanno tutto il lavoro.
            Se quindi deve sviluppare l’applicazione di cui sopra necessiterà solamente della versione 14. Se però deve creare un AVD per il test con la versione 8 deve ovviamente scaricare le corrispondenti librerie.
            Per concludere la short answer alla domanda iniziale è no.

            Saluti
            Massimo Carli

  12. Ciao Massimo, piacere di conoscerti!
    Prima di tutti i miei più sinceri complimenti per il libro…è a dir poco fantastico!
    Mi “appassiona” sempre di più…pagina dopo pagina…complimenti!

    Sono nuovo al mondo Android, ho lavorato un pò in Java ma nulla di particolare; ho scelto il tuo libro poichè lo reputo uno dei migliori in giro…non mi sbagliavo! 🙂

    Sono proprio ai primi capitoli e, come immaginavo (visto l’evolversi di AS), ho trovato qualche discordanza che vorrei condividere/chiarire con te:

    1) Nel mio AS (0.4.6) nel file AndroidManifest.xml non vedo informazioni relative a minSdkVersion – targetSdkVersion ma le ritrovo nel file build.gradle all’interno del Project. Cambia poco, giusto? C’è stato solo uno “swap” di info tra i file oppure cambia qualcos’altro?

    2) Ho incontrato lo stesso problema dell’utente “Francesco Grosselle on February 6, 2014 at 4:44 pm”. Non riesco a capire bene la tua risposta, come posso ovviare a quel problema? In realtà in rete ho trovato queste info sul sito ufficiale Android: https://developer.android.com/training/system-ui/status.html .
    In realtà pare che dalle versioni di Android 4.1 + il procedimento per nascondere la Action Bar sia diverso…mi confermi?

    Grazie di tutto Massimo…continua così! 😉

    • Ciao Francesco,
      ti ringrazio per i complimenti anche se esagerati 🙂 Per quello che riguarda le tue domande, purtroppo Google ha aggiornato Android Studio ed il plugin per Grande moltissime volte. A dire il vero proprio oggi ci dobbiamo considerare fortunati visto che Apple ha deciso di introdurre un nuovo linguaggio (Swift) per lo sviluppo di applicazioni iOs. Probabilmente ci dovremo aspettare che presto Google abbandoni Java a favore di un qualcosa di più ….dinamico: JavaScript????? 🙂 . Alla fine iOs ed Android si assomigliamo sempre di più…. Anyway, in Android Studio ora le informazioni relative al minSdkVersion e targetSdkVersion vengono messe in un file di configurazione che si chiama sempre build.gradle ma che è contenuto nella cartella principale del progetto che contiene poi i diversi moduli. Serve in sintesi per mettere queste informazioni in un posto solo invece che copiarle più volte nei diversi moduli. A dire il vero nel progetto qui in MailOnLine abbiamo la stessa informazione in tutti i moduli, l’importante è che non siano in conflitto l’uno con l’altro ovvero che una libreria non abbia una versione minima maggiore di quella del modulo principale.
      Per quello che riguarda la seconda domanda, il link che fornisci è quello giusto. Sinceramente ora le applicazioni Android fanno sempre più uso di IF relativi alle varie versioni ed API da utilizzare. Non tutto viene gestito attraverso qualificatori. Sinceramente è un qualcosa che non sopporto in quanto l’utilizzo di IF è spesso motivo di cattivo design. Per quello che riguarda il problema di Francesco il link di riferimento è il seguente:
      http://developer.android.com/guide/topics/ui/actionbar.html.
      Spero di esserti stato utile
      Saluti
      Massimo

      • Non potevi essere più chiaro, preciso, veloce e professionale…GRAZIE MILLE!

        Per tutto il resto…la tua copertina docet: “Lavora sempre duramente su qualcosa di scomodamente eccitante”! 😉

  13. salve ,prima cosa ti faccio i complimenti per il libro su android 4 poi volevo chiedere come facevo ad eliminare un progetto una volta creato ora sono alla versione 0.6.1 grazie mille

  14. Buongiorno,
    a pag. 123 di Android4 si vede:

    @color/red

    Questa stringa mi dà errore con l’ADT 23.0.2.1259578 e non mi lascia compilare.
    L’errore è:
    Unexpected resource reference type; expected value of type @string/

    Mettendo un carattere di escape / davanti a @ l’errore scompare, ma non funziona come dovrebbe credo, è normale, è cambiato qualcosa? Prima non mi aveva mai segnato questo problema…

    Grazie

    • Buongiorno,
      si tratta di un errore. Ovviamente non deve essere una risorsa di tipo string ma di tipo color. Non è quindi:


      @color/red

      ma


      @color/red

      La ringrazio per la segnalazione.

      Massimo Carli

      • Buongiorno,
        innanzitutto grazie per la risposta!

        Forse però ho spiegato male, il codice di cui parlavo è questo:


        #FF0000
        […]

        @color/red

        Fino a prima di aggiornare l’ADT alla versione sopra indicata non aveva mai segnato come errore il @color/red per l’elemento string sopra indicato.

        Da come ho capito quello serve a creare una sorta di alias che poi potrei utilizzare, per esempio, per definire il colore del testo di una TextView (e infatti lo usavo così).
        Ha sempre compilato correttamente, ma dopo aver aggiornato l’ADT mi sono trovato davanti a questo problema. In particolare non capisco se è meglio evitare di utilizzare una stringa come alias per un colore e quindi ora l’ADT lo segna come errore o se è un semplice bug… (Uno dei tanti, anche rilevanti in seguito all’aggiornamento per Android L).

        Grazie e scusi ancora per il disturbo!

  15. Buona sera Massimo,

    solo un piccolo errore di italiano alla pagina 94, 4° riga dopo la figura 3.21.
    (InfiMe, questa applicazione….)

    Buona serata

  16. buongiorno io ho acquistato il suo libro android 4 guida per lo sviluppatore ma non riesco a trovare i sorgenti (del progetto UGHO) nella sezione download.. si possono ancora trovare in rete? grazie, arrivederci

  17. Ciao Massimo,
    ti segnalo, se non erro, che il servizio LoginService è mancante del costruttore di default privato.

    Un saluto.

    Lorenzo

  18. Buongiorno sto leggendo android 4 guida per lo sviluppatore, ma mi sono inpantanato in un preblema, nel capitolo 7 il batchactionmode non funziona, anche se seleziono un elemento della lista resta “unchecked”, il “CHOICE_MODE_MULTIPLE_MODAL” sembra non essere funzionante.Ho provato a documentarmi in internet ma sembra che sia un problema mio, ho controllato la documentazione ufficiale e non sembrano esserci errori nel libro quindi non mi spiego.Sa darmi qualche informazione?

    • Buongiorno,
      ho appena importato in Android Studio (usando appunto l’opzione di import) l’esempio BatchActionMode e funziona come previsto. Attenzione comunque che per attivare l’ActionMode e’ necessario effettuare un long click e non un semplice click.
      Saluti
      Massimo Carli

  19. Ciao! Innanzitutto complimenti per il libro. Davvero molto utile.
    Sto però riscontrando un problema. Quando cerco di caricare uno dei progetti esempio Android Studio (capitolo 3), ricevo questo errore: Error running UGHO: Gradle project sync failed. Please fix your project and try again.
    Come mai?

    • Ciao,
      grazie per i complimenti. Android Studio e’ cambiato in questo ultimo periodo. La cosa migliore (e piu’ istruttiva) e’ seguire il libro ricreando il progetto da zero con Android Studio attuale.
      Saluti
      Massimo Carli

  20. Salve,
    innanzitutto complimenti per il libro che trovo ben strutturato ed ottimamente spiegato. Personalmente le critiche riguardo la differente release di Android Studio che renderebbero il libro difficile da seguire non le condivido per nulla; tant’è vero che lo si riesce a seguire benissimo anche usando come ambiente di sviluppo Eclipse.

    Detto ciò, ho un problemino con l’esempio del cap. 3 che mi sta facendo impazzire.
    A partire da pag. 104 si inizia a parlare della gestione dello stato osservando come la SplashActivity possa in teoria durare in eterno nel caso si continuasse a cambiare l’orientamento del dispositivo. Ora, quello che sperimento io (sull’emulatore) è un fatto completamente diverso. Anche se continuo a cambiare orientamento, dopo il tempo massimo prefissato (che ho portato a 10 secondi per comodità) mi appare comunque la schermata di “Hello World!” della MainActivity, ma il problema vero è che ne vengono create tante quante sono state le volte che ho cambiato orientamento al dispositivo!!
    In pratica per uscire dall’applicazione devo premere il tasto ‘back’ n volte….

    Sembrerebbe che ogni Handler creato dalle n istanze delle SplashActivity continui a vivere di vita propria giungendo alla fine a lanciare n volte il metodo goAhead() (che a sua volta lancia la MainActivity con “Hello World!”).
    Non ho letto di nessuno che abbia evidenziato lo stesso problema, così mi viene il dubbio che mi sia sfuggito qualcosa, anche se ho ricontrollato più volte e non mi sembra.
    Come posso fare per ovviare a questo problema?
    Grazie mille!

    • Buongiorno,
      la ringrazio per i complimenti. Per quello che riguarda la famosa SplashActivity probabilmente nel suo codice manca la rimozione dell’Handler del messaggio di passaggio alla Activity successiva il quale dovrebbe essere

      @Override
      protected void onStop() {
      super.onStop();
      mHandler.removeMessages(GO_AHEAD_WHAT);
      }

      presente nella classe StateSplashActivity. Faro’ comunque altre prove.
      Saluti
      Massimo Carli

      • La ringrazio per la risposta, in effetti questo risolve il problema. Nel testo però non lo trovo indicato (probabilmente c’è nel listato completo, ma io preferisco per ora costruirmi l’applicazione a mano passo per passo seguendo solo il testo).

        Se ho ben capito, fin quando c’è anche un solo messaggio nella coda di un handler, questo e tutti i suoi riferimenti rimangono attivi in memoria. Quindi, visto che la funzione goAhead() utilizzata nel gestore dell’handler fa parte della classe SplashActivity, l’intera istanza di quest’ultima viene conservata in memoria anche dopo la destroy ? In pratica la destroy avrebbe in questo caso la sola funzione di togliere l’activity dallo stack?

        • L’Handler sta in vita fino a che ha messaggi da elaborare. Le consiglio comunque di tenere sempre i listati sott’occhio per comprendere meglio il tutto.
          Saluti
          Massimo Carli

  21. Buongiorno,
    sto riscontrando un problema nel capitolo 3 a pagina 119
    Il problema è dovuto alla definizione statica di UserModel

    public static UserModel create(final long birthDate) {
    final UserModel userModel = new UserModel (birthDate);

    Android studio mi ritorna il seguente errore:
    “Inner classes cannot have static declaration”
    vorrei capire il motivo di tale errore.
    Buona giornata
    Mirco

  22. Salve, ho comprato il suo libro e lo trovo molto interessante, ma come molti ho trovato delle difficoltà con il nuovo aggiornamento. Volevo sapere, visto che non è più possibile andare su android component, vorrei sapere come creare una nuova activity senza dover per forza scegliere un fragment. Grazie

    • Buongiorno,
      la ringrazio. Con l’ultima version di Android Studio e’ possibile creare una semplice Activity selezionando il package in cui si vuole inserire la classe con il pulsante destro del mouse e quindi selezionare New > Activity > Blank Activity

      Saluti
      Massimo Carli

      • Grazie per la risposta. E’ possibile avere un progetto già compilato capitolo per capitolo? Ne ho scaricati alcuni da un link che ho trovato in questa pagina ma mi da degli errori nel momento dell’apertura.

  23. Salve, alla pagina 134 del libro, quando andiamo a modificare la classe SplashActivity, non si riesce a risolvere il metodo “obtainMessage” e “sendMessageAtTime”, mi può essere d’aiuto.

    protected void onStart() {
    super.onStart();
    mStartTime = SystemClock.uptimeMillis();

    final Message goAheadMessage = mHandler.obtainMessage(GO_AHEAD_WHAT);
    mHandler.sendMessageAtTime(goAheadMessage, mStartTime + MAX_WAIT_INTERVAL);

    }

    • Buongiorno,
      sta usando il codice allegato o prendendo il codice dal testo? Nel testo non sono citati tutti gli import per motivi di spazio. Le consiglio di scaricare i sorgenti ed importare il progetto.

      Saluti
      Massimo Carli

  24. Salve. A pagina 102 del libro Android 4 viene creata la classe UiHandler interna alla classe NoLeakSplashActivity. Non riesco in alcun modo a capire se tutta quest’ultima classe sia inserita dentro il file SplashActivity o se sia un altro file.Ho provato in entrambi in modi ma in un modo non ho modo di richiamare i metodi.

    Potrebbe dirmi dove devo inserire tutto questo codice??? Grazie

    • Buongiorno,
      la classe NoLeakSplashActivity e’ un altro file e permette di descrivere una Splash in un altro modo. Comunque a questa pagina trova tutto il codice descritto nel testo selezionando il link “Link Apogeonline”

      Saluti
      Massimo Carli

  25. Buonasera! Scrivo qui perché non trovo una sezione “contatti” sul sito. È previsto un libro su Android Lollipop? Ci sono differenze sostanziali tra gli argomenti presenti nell’ultimo libro (Android 4) e la nuova versione di Android?
    Cosa devo aggiungere alle mie conoscenze acquisite tramite lo studio del libro Android 4 per programmare app per Lollipop?

    • Buongiorno,
      era previsto un libro su Lollipop ma abbiamo deciso di andare direttamente su Android M per cui al momento mi sto dedicando a quello. Ormai i concetti alla base della piattaforma sono pressoche’ gli stessi per cui le differenze sono piu’ che altro nell’utilizzo di alcune API e nella ottimizzazione delle performance attraverso i tool offerti dalla piattaforma.
      Saluti
      Massimo Carli

Leave a Reply

Your email address will not be published. Required fields are marked *