Pubblicato da Fergus Hurley, Product Manager, Google Play
Le scarse prestazioni delle app sono un'esperienza nota a parecchi utenti. Pensa all'ultima volta che hai avuto a che fare con un'app che si blocca, non risponde o esegue il rendering lentamente. Considera la tua reazione quando controlli la batteria sul dispositivo e scopri che si scarica velocemente per colpa dell’app. Quando un'app funziona male, gli utenti lo notano. Infatti in un'analisi interna delle recensioni delle app su Google Play, abbiamo rilevato che in metà delle recensioni a 1 stella veniva menzionata la stabilità dell'app.
Pubblicato da Fergus Hurley, Product Manager, Google Play
Le scarse prestazioni delle app sono un'esperienza nota a parecchi utenti. Pensa all'ultima volta che hai avuto a che fare con un'app che si blocca, non risponde o esegue il rendering lentamente. Considera la tua reazione quando controlli la batteria sul dispositivo e scopri che si scarica velocemente per colpa dell’app. Quando un'app funziona male, gli utenti lo notano. Infatti in un'analisi interna delle recensioni delle app su Google Play, abbiamo rilevato che in metà delle recensioni a 1 stella veniva menzionata la stabilità dell'app.

Al contrario, le persone premiano sempre le app dalle prestazioni migliori con valutazioni e recensioni positive. Questo comporta un miglior posizionamento su Google Play e conseguentemente favorisce il numero delle installazioni. Non solo, ma gli utenti si sentono maggiormente coinvolti e sono disposti a investire più tempo e denaro.

In occasione di Google I/O 2017 abbiamo annunciato il nuovo dashboard di Android Vitals nella Google Play Console. Android Vitals è stato progettato per aiutarti a comprendere e analizzare i comportamenti indesiderati di un’app, per migliorarne le prestazioni e sfruttare i benefici derivati da prestazioni migliori.

Android Vitals nella Google Play Console




Android Vitals aiuta a individuare modi per migliorare le prestazioni della tua app. I dashboard offrono sia ai programmatori che ai titolari utili e rapide metriche di riferimento sulle prestazioni, che consentono di monitorare le applicazioni per analizzare i dati e adoperare le risorse giuste per apportare miglioramenti.

Visualizziamo i seguenti dati raccolti dai dispositivi Android i cui utenti hanno optato per condividere automaticamente i dati di utilizzo e di diagnostica:
  • Stabilità: tasso di ANR e di arresti anomali
  • Tempo di rendering: rendering lento (16 ms) e frame UI bloccati (700 ms)
  • Consumo della batteria: wake lock bloccati e riattivazioni eccessive

Ecco come Busuu ha migliorato il suo rating da 4,1 ☆ a 4,5 ☆ concentrandosi sulle prestazioni dell’app

Busuu è una delle più grandi app di apprendimento delle lingue di tutto il mondo. Antoine Sakho, il responsabile gestione prodotti, ci racconta come Busuu è riuscita a migliorare le valutazioni degli utenti.

Engineering per alte prestazioni con gli strumenti offerti da Android e Google Play


Leggi il nostro articolo sulle best practice di Android Vitals per capire i dati mostrati nei dashboard e come migliorare le prestazioni e la stabilità delle app. Guarda la sessione di I/O per conoscere gli altri strumenti di Android e Google Play da utilizzare per identificare e correggere i comportamenti indesiderati.

Scopri le altre funzionalità di Play Console e tieniti aggiornato con notizie e suggerimenti per affermarti e avere successo su Google Play con l'app Playbook. Iscriviti alla versione beta e istallala subito.

Quanto ti è stato utile questo post?

Pubblicato da Wayne Piekarski, Developer Advocate for IoT
Abbiamo da poco lanciato l’anteprima di Android Things Console. Questa console consente agli sviluppatori di gestire il software in esecuzione sulla loro flotta di dispositivi Android Things IoT, inclusa la creazione di immagini del produttore nonché l'aggiornamento del sistema operativo e degli APK forniti dagli sviluppatori. I dispositivi devono eseguire un'immagine di sistema scaricata tramite la Android Things Console per ricevere gli aggiornamenti futuri, come l'imminente Anteprima per sviluppatori 5. Google fornisce l’infrastruttura per gli aggiornamenti in modalità OTA, così gli sviluppatori possono concentrarsi sulla loro applicazione, senza dover creare implementazioni, per far entrare i loro dispositivi IoT sul mercato in modo più rapido e sicuro di prima.
Pubblicato da Wayne Piekarski, Developer Advocate for IoT
Abbiamo da poco lanciato l’anteprima di Android Things Console. Questa console consente agli sviluppatori di gestire il software in esecuzione sulla loro flotta di dispositivi Android Things IoT, inclusa la creazione di immagini del produttore nonché l'aggiornamento del sistema operativo e degli APK forniti dagli sviluppatori. I dispositivi devono eseguire un'immagine di sistema scaricata tramite la Android Things Console per ricevere gli aggiornamenti futuri, come l'imminente Anteprima per sviluppatori 5. Google fornisce l’infrastruttura per gli aggiornamenti in modalità OTA, così gli sviluppatori possono concentrarsi sulla loro applicazione, senza dover creare implementazioni, per far entrare i loro dispositivi IoT sul mercato in modo più rapido e sicuro di prima.

Facciamo un tour della console per vedere quali caratteristiche offre.

Creazione del prodotto e impostazioni del prodotto


Lo sviluppatore innanzitutto deve definire il prodotto, inclusa la selezione del nome e del tipo di System-on-Module (SoM) su cui si basa il dispositivo. Molti sviluppatori vogliono utilizzare Google Play Services per la creazione di dispositivi IoT che è configurato qui come funzionalità opzionale. Anche le dimensioni della partizione OEM sono configurate e devono essere grandi abbastanza da includere un’eventuale crescita futura dell’APK.

Immagini del produttore


Un dispositivo richiede un firmware di base iniziale che consenta di ricevere aggiornamenti futuri per il prodotto giusto dalla console. Puoi selezionare "Create Build Configuration" per creare un'immagine del produttore predefinita con un bundle vuoto configurato per il tuo prodotto. Quindi l’immagine del produttore può essere scaricata e trasmessa al tuo dispositivo per iniziare a svilupparla trasferendo localmente un APK.

Dopo aver predisposto l'app che desideri distribuire su tutti i dispositivi del tuo prodotto, puoi caricare un bundle sulla console. Questo bundle è un file ZIP che contiene il file APK principale, i driver di spazio utente come servizio in un APK e qualsiasi altro APK lanciato dall'APK principale. È inoltre supportato un file bootanimation.zip che verrà visualizzato durante l'avvio. Il file ZIP del bundle caricato viene quindi utilizzato per produrre un'immagine di sistema completa che può essere implementata sui dispositivi. Ulteriori informazioni sul contenuto di questo file sono disponibili nella documentazione.

Aggiornamenti OTA


Questa scheda consente di selezionare l’immagine di sistema da inviare in push alla flotta dei dispositivi del prodotto. Lo sviluppatore ne seleziona una e l’opzione "Push to Devices" avvierà il processo. L’aggiornamento viene quindi eseguito in modo sicuro su tutti i dispositivi, installato in una delle partizioni A/B e attivato quando il dispositivo viene riavviato. Se vengono rilevati eventuali errori, il dispositivo esegue automaticamente il rollback alla precedente versione funzionante, in modo che sia ancora possibile effettuare gli aggiornamenti successivi. Gli sviluppatori saranno in grado di testare in anticipo le nuove versioni di Android Things e decidere se i dispositivi devono essere aggiornati automaticamente.

Feedback


Attualmente la Android Things Console è un’anteprima e stiamo lavorando su molte altre caratteristiche e personalizzazioni. Invitiamo tutti gli sviluppatori di Android Things ad andare a vedere la Android Things Console e a fornirci i loro commenti. Continua a inviarci il tuo feedback con le segnalazioni di bug e le richieste di funzionalità e mandaci eventuali domande a Stack Overflow. Per ulteriori approfondimenti sull’Android Things Console, leggi la documentazione. Incoraggiamo tutti a partecipare alla Community di sviluppatori IoT di Google su Google+, un'ottima risorsa per ricevere aggiornamenti e confrontarsi sulle idee.


Testare la tua app è un ottimo modo per contribuire a ottimizzarne la qualità e molti di voi sanno che Firebase Test Lab for Android ...
Pubblicato da Doug Stevenson, Developer Advocate


Testare la tua app è un ottimo modo per contribuire a ottimizzarne la qualità e molti di voi sanno che Firebase Test Lab for Android offre alcuni strumenti utili per le app Android. Se sei il tipo di programmatore che ama massimizzare la copertura dei test scrivendo test instrumentati (e normali test di unità), puoi inviarli a Test Lab per l'esecuzione. Se non ti piace scrivere test, hai altre opzioni. Puoi registrare i test instrumentati interagendo con l'applicazione tramite Espresso Test Recorder in Android Studio. Non devi fare praticamente nulla per il Robo test perché esegue automaticamente la scansione dell’app.

Questi test sono utili per le app basate sui dati per via dei robusti framework di test che capiscono come navigare i widget della piattaforma Android utilizzati per ricevere dati di input e visualizzarli sullo schermo. Tuttavia, la maggior parte dei giochi non funziona con i widget della piattaforma. Di solito i giochi prendono il controllo dello schermo utilizzando i propri elementi UI e fornendo i controlli touch. Di conseguenza è estremamente difficile scrivere test instrumentati per testare i giochi e il Robo test non ha idea di come analizzare i giochi.

Per affrontare queste problematiche di testing il team Test Lab ha trovato un metodo che consente agli sviluppatori di testare efficacemente i loro giochi su molti dei dispositivi forniti da Test Lab. È un nuovo tipo di test chiamato Game Loop Test e da oggi è disponibile in versione beta.

Come funziona il test Game Loop?


Se hai notato come funzionano i videogiochi arcade, sai che mostrano sempre qualcosa sullo schermo, in genere una versione demo automatica del gioco, chiamata "Attract Mode (modalità screen saver)". Grazie a Firebase Test Lab, ora gli sviluppatori di giochi possono utilizzare il concetto Attract Mode per costruire diversi scenari e Test Lab provvederà affinché questi scenari vengano invocati in sequenza. In tal modo gli sviluppatori hanno la possibilità di testare un'ampia varietà di livelli e situazioni di gioco in un unico test eseguito su tutti i dispositivi forniti da Test Lab. Se si verificano dei problemi con uno scenario, puoi scoprire subito di quale si tratti e concentrarti su quel caso specifico per migliorarlo.

Non solo, ma Test Lab ora fornisce dati sulle prestazioni in ogni report. Di particolare interesse per gli sviluppatori di giochi è il grafico dei fotogrammi al secondo (FPS) del test, legato a un video del display del dispositivo. In questo modo è possibile identificare subito le parti del gioco che non vengono eseguite con FPS accettabili.

Oltre agli FPS, per tutte le app sono disponibili altre metriche sulle prestazioni, tra cui l'utilizzo della CPU e della memoria nonché il traffico in accesso e uscita della rete. Nota come puoi andare direttamente al punto del video in cui hai rilevato problemi di prestazioni.

Se sei uno sviluppatore di giochi, è giunta l’ora di andare a vedere Firebase Test Lab for Android per scoprire come può aiutarti a migliorare la qualità del tuo gioco.

Pubblicato da Aayush Upadhyay e Neel Rao, Area 120
Nell'ambito di Area 120, il laboratorio interno di Google dedicato alle idee sperimentali, stiamo lavorando su progetti in fase iniziale passandoli in rassegna per testarne i concetti. Molti sviluppatori ci hanno riferito di avere la necessità di finanziare le loro applicazioni VR, quindi abbiamo iniziato a sperimentare per trovare il giusto formato di annuncio VR nativo e mobile.
Pubblicato da Aayush Upadhyay e Neel Rao, Area 120
Nell'ambito di Area 120, il laboratorio interno di Google dedicato alle idee sperimentali, stiamo lavorando su progetti in fase iniziale passandoli in rassegna per testarne i concetti. Molti sviluppatori ci hanno riferito di avere la necessità di finanziare le loro applicazioni VR, quindi abbiamo iniziato a sperimentare per trovare il giusto formato di annuncio VR nativo e mobile.

Sviluppatori e utenti dicono di voler evitare esperienze pubblicitarie intrusive e difficili da implementare nella VR. Quindi la nostra idea, per un primo potenziale formato, consiste in un cubo con cui gli utenti possono interagire, se lo desiderano, per poi vedere l’annuncio video. Toccando il cubo o guardandolo per alcuni secondi, si aprirà un lettore video nel quale l'utente potrà guardare ed eventualmente chiudere facilmente il video. Ecco come funziona:

Questo progetto si basa su alcuni principi fondamentali: i formati degli annunci VR devono essere di facile implementazione per gli sviluppatori, nativi in VR, flessibili abbastanza da essere personalizzati, utili e non intrusivi per gli utenti. Il nostro team di Area 120 ha ottenuto risultati incoraggianti insieme ad alcuni partner sperimentali e vorrebbe collaborare con la community degli sviluppatori man mano che si fanno progressi nell’ambito di Cardboard (su Android e iOS), Daydream e Samsung Gear VR.



Se sei uno sviluppatore VR (o desideri diventarlo) e sei interessato a testare questo formato con noi, compila il modulo per iscriverti al nostro programma con accesso in anteprima. L’SDK in fase iniziale è disponibile e può essere installato e utilizzato facilmente. Siamo entusiasti di continuare a sperimentare con questo formato e speriamo che tu possa diventare uno dei nostri!



Nell'ultimo decennio l'applicazione e le prestazioni del Deep Learning hanno fatto progressi a un ritmo sorprendente. Tuttavia, nello stato attuale di questo settore, le architetture di rete neurale sono altamente specializzate per domini di applicazione molto specifici. Un'importante domanda rimane senza risposta: far convergere questi domini agevolerà un modello unificato che può essere eseguito correttamente su diversi domini?

Oggi vi presentiamo MultiModel, un'architettura di rete neurale che attinge dal successo delle reti di visione, lingua e audio e consente di risolvere simultaneamente una serie di problemi relativi a molteplici domini, tra cui il riconoscimento delle immagini, la traduzione e il riconoscimento vocale. Anche se in questa direzione sono già stati fatti passi da gigante grazie a Multilingual Neural Machine Translation System di Google utilizzato nel Google Traduttore, MultiModel rappresenta il primo vero e proprio passo per far convergere visione, audio e comprensione della lingua in una singola rete.

L'ispirazione per la modalità di gestione di domini multipli di MultiModel deriva dal cervello stesso che trasforma le percezioni provenienti dai sensi (come udito, vista e gusto) in una singola rappresentazione condivisa per poi esprimerle esternamente nella forma di parlato o azioni. Analogamente a queste modalità e alle trasformazioni effettuate, MultiModel dispone di una serie di piccole sottoreti specifiche alla modalità per audio, immagini o testo e un modello condiviso costituito da un encoder, un mixer di input/output e un decodificatore, come viene illustrato qui.
Architettura MultiModel: piccole sottoreti specifiche alla modalità funzionano con un encoder condiviso, un mixer I/O e un decodificatore. Ogni petalo rappresenta una modalità, trasformandosi nella e dalla rappresentazione interna.
Abbiamo dimostrato che MultiModel è in grado di apprendere contemporaneamente otto attività: rilevare oggetti nelle immagini, fornire didascalie, eseguire il riconoscimento vocale, tradurre quattro coppie di lingue e fare l'analisi dei componenti sintattici allo stesso tempo. L'input viene fornito al modello insieme a un segnale molto semplice che determina il tipo di output che vogliamo. Di seguito sono illustrati alcuni esempi tratti da un MultiModel addestrato a eseguire contemporaneamente queste otto attività1:
Durante la progettazione di MultiModel è emerso chiaramente che alcuni elementi di ciascun dominio di ricerca (visione, lingua e audio) costituiscono una parte integrante del successo del modello nelle attività correlate. Abbiamo dimostrato che queste primitive computazionali (come le convoluzioni, l'attenzione o Mixture-of-Experts Layer) migliorano chiaramente le prestazioni nel loro dominio di applicazione originario, senza tuttavia ostacolare le prestazioni di MultiModel in altre attività. Non solo è possibile ottenere buone prestazioni nell'addestramento congiunto di attività multiple, ma effettivamente la performance migliora perfino nelle attività con quantità limitate di dati. Con nostra grande sorpresa, questo accade anche se le attività provengono da domini diversi che sembrano avere poco in comune, ad esempio un'attività di riconoscimento delle immagini può migliorare le prestazioni di un'attività linguistica.

Bisogna notare che, anche se MultiModel non stabilisce nuovi record di prestazioni, fornisce informazioni sulle dinamiche dell'apprendimento multidominio multi-task delle reti neurali e offre la potenzialità di un apprendimento ottimizzato in base ad attività con quantità limitate di dati introducendo attività ausiliari. C'è un detto di lunga data nel settore del machine learning: "La miglior regolarizzazione è avere più dati". In MultiModel, questi dati possono essere ricavati da diversi domini e di conseguenza possono essere ottenuti più facilmente di quanto non si pensasse prima. MultiModel fornisce la prova che l'addestramento congiunto di più attività può portare a buoni risultati e migliorare le prestazioni delle attività con quantità limitate di dati.

Molte domande riguardanti il machine learning multidominio rimangono aperte e continueremo a impegnarci per affinare MultiModel e migliorare le sue prestazioni. Perché questa ricerca possa procedere a buon ritmo, abbiamo reso MultiModel open source nella libreria Tensor2Tensor. Riteniamo che questi modelli sinergici addestrati su dati ricavati da domini multipli siano il prossimo passo nell'ambito del Deep Learning e che fondamentalmente svolgeranno attività oltre la portata delle attuali reti addestrate in modo più tradizionale.

Riconoscimenti
Il presente lavoro è il risultato della collaborazione con i Googler Łukasz Kaiser, Noam Shazeer, Ashish Vaswani, Niki Parmar, Llion Jones e Jakob Uszkoreit e Aidan N. Gomez della University of Toronto. È stato eseguito quando Aidan lavorava con il Google Brain team.




1 Le 8 attività sono: (1) riconoscimento vocale (corpus WSJ), (2) classificazione di immagini (ImageNet), (3) didascalie per immagini (MS COCO), (4) parsing (Penn Treebank), (5) traduzione inglese-tedesco, (7) traduzione inglese-francese, (8) traduzione francese-inglese (tutte utilizzano i set di dati WMT).



Il Deep Learning (DL) ha consentito il rapido avanzamento di molte tecnologie importanti, come ad esempio la ...


Il Deep Learning (DL) ha consentito il rapido avanzamento di molte tecnologie importanti, come ad esempio la traduzione automatica, il riconoscimento vocale e il rilevamento degli oggetti. Nella comunità di ricerca si possono trovare codici open source forniti dagli autori stessi per contribuire a replicare i loro risultati e apportare ulteriori progressi al campo del Deep Learning. Tuttavia la maggior parte di questi sistemi DL utilizza configurazioni particolari che richiedono un notevole impegno ingegneristico e possono dare i risultati desiderati solo in relazione a un problema o un'architettura specifica, rendendo quindi difficile l'esecuzione di nuovi esperimenti e il confronto dei risultati.

Oggi siamo lieti di annunciare la release di Tensor2Tensor (T2T), un sistema open source per l'addestramento di modelli di Deep Learning in TensorFlow. T2T facilita la creazione di modelli allo stato dell'arte utilizzabili in un'ampia gamma di applicazioni ML, come la traduzione, il parsing, le didascalie per immagini e molto altro ancora, consentendoti di esplorare idee diverse più velocemente di prima. Questa versione comprende anche una libreria di set di dati e modelli, tra cui i migliori modelli di alcuni paper recenti (Attention Is All You Need, Depthwise Separable Convolutions for Neural Machine Translation e One Model to Learn Them All) per aiutarti a iniziare la tua ricerca DL.

Modello di traduzione
Tempi di addestramento
BLEU (differenza dalla baseline)
Transformer (T2T)
3 giorni su 8 GPU
28,4 (+7,8)
SliceNet (T2T)
6 giorni su 32 GPU
26,1 (+5,5)
1 giorno su 64 GPU
26,0 (+5,4)
ConvS2S
18 giorni su 1 GPU
25,1 (+4,5)
GNMT
1 giorno su 96 GPU
24,6 (+4,0)
8 giorni su 32 GPU
23,8 (+3,2)
MOSES (baseline basata su frase)
N/D
20,6 (+0,0)
Punteggi BLEU (valore maggiore preferibile) in un'attività standard di traduzione WMT inglese-tedesco.
Per fare un esempio dei miglioramenti apportati da T2T, abbiamo applicato la libreria alla traduzione automatica. Come indicato nella tabella precedente, due diversi modelli T2T, SliceNet e Transformer, sorpassano il precedente GNMT+MoE, finora considerato il più avanzato. Il nostro miglior modello T2T, Transformer, supera di 3,8 punti il modello GNMT standard, che a sua volta era superiore di 4 punti a MOSES, il sistema di traduzione basato su frase. In particolare, grazie a T2T puoi accedere ai migliori risultati ottenuti in passato con una singola GPU in un giorno: un piccolo modello Transformer (non mostrato sopra) ottiene 24,9 BLEU dopo 1 giorno di addestramento su una singola GPU. Ora chiunque abbia una GPU può "armeggiare" con i propri modelli di traduzione grazie al nostro repository github che fornisce le istruzioni necessarie per farlo.

Addestramento modulare Multi-Task
La libreria T2T è creata con strumenti di TensorFlow già conosciuti e definisce i diversi componenti necessari in un sistema di Deep Learning: set di dati, architetture di modello, ottimizzatori, schemi di declino dei tassi di apprendimento, iperparametri e così via. Fondamentalmente impone un'interfaccia standard a tutti questi componenti e mette in atto le best practice correnti per ML, permettendoti così di scegliere qualsiasi set di dati, modello, ottimizzatore o insieme di iperparametri per eseguire l'addestramento e verificarne il funzionamento. Abbiamo reso l'architettura modulare, quindi qualsiasi elemento, dai dati di input all'output previsto, è una funzione da tensore a tensore (T2T). Se hai un'idea nuova per l'architettura del modello, non devi sostituire l'intera configurazione. Per tenere la parte incorporante, la perdita e tutto il resto, basta sostituire il corpo del modello con la tua funzione che utilizza un tensore come input e restituisce poi un tensore.

Grazie alla flessibilità di T2T, l'addestramento non richiede necessariamente un determinato modello o set di dati. È così facile che anche le architetture, come il famoso modello LSTM sequenza per sequenza, possono essere definite da qualche riga di codice. Si può anche addestrare un singolo modello su attività multiple ricavate da domini diversi e addirittura addestrare un solo modello su tutti i set di dati contemporaneamente. Siamo lieti di comunicare che il nostro MultiModel, addestrato in questo modo e incluso in T2T, offre ottimi risultati in molte attività, anche quando viene addestrato contemporaneamente su ImageNet (classificazione di immagini), MS COCO (didascalie per immagini), WSJ (riconoscimento vocale), WMT (traduzione) e sul corpus di parsing Penn Treebank. È la prima volta che un modello singolo ha dimostrato di poter eseguire tutte queste attività in contemporanea.

Best practice incorporate
Con questa release iniziale, ti forniamo gli script per generare una serie di set di dati ampiamente utilizzati nella comunità di ricerca1, una manciata di modelli2, una serie di configurazioni di iperparametri e un'implementazione performante di altri importanti trucchi del mestiere. È difficile elencarli tutti ma, se decidi di eseguire il tuo modello con T2T, riceverai gratuitamente la corretta spaziatura interna delle sequenze e la corrispondente perdita di entropia incrociata, parametri ben strutturati per l'ottimizzatore di Adam, il batching adattivo, l'addestramento distribuito sincrono, l'aumento dei dati affinato per le immagini, l'anti-aliasing delle etichette e una serie di configurazioni di iperparametri molto validi, inclusi quelli sopraelencati, che ottengono risultati avanzatissimi nella traduzione e possono aiutare anche te.

Ad esempio, l'attività di analisi delle frasi in inglese secondo gli alberi gerarchici sintattici è un problema decennale, per il quale sono stati sviluppati metodi competitivi ma anche impegnativi. Ora può essere considerato come un problema sequenza per sequenza ed essere risolto con le reti neurali, ma in passato richiedeva considerevoli sforzi di regolazione. Grazie a T2T abbiamo impiegato solo pochi giorni ad aggiungere il generatore di dati di parsing e a regolare il nostro modello di trasformer di attenzione per l'addestramento su questo problema. Con nostra grande sorpresa, abbiamo ottenuto ottimi risultati in una sola settimana:

Modello di parsing
Punteggio F1 (valore maggiore preferibile)
Transformer (T2T)
91,3
Dyer et al.
91,7
Zhu et al.
90,4
Socher et al.
90,4
Vinyals & Kaiser et al.
88,3
Punteggi di parsing F1 sul set di test standard, sezione 23 del WSJ. Qui confrontiamo i modelli addestrati solo sul set Penn Treebank WSJ. Per ulteriori dettagli, consulta il paper .

Contributo a Tensor2Tensor
Oltre a esplorare modelli e set di dati esistenti, puoi definire facilmente il tuo modello e aggiungere i set di dati desiderati a Tensor2Tensor. Riteniamo che i modelli già inclusi funzionino correttamente con molte attività NLP, quindi anche solo aggiungere il tuo set di dati potrebbe produrre risultati interessanti. Grazie alla modularità di T2T, aggiungere il tuo modello e vedere come si comporta con le diverse attività sarà molto semplice. In tal modo l'intera comunità trarrà vantaggio da una libreria di baseline e la ricerca sul Deep Learning verrà accelerata. Vai al nostro repository github, prova i nuovi modelli e contribuisci con il tuo!

Riconoscimenti
La release di Tensor2Tensor è stata possibile solo grazie alla collaborazione internazionale di molti ingegneri e ricercatori. Vogliamo ringraziare in particolare il team che ha contribuito maggiormente (in ordine alfabetico): Samy Bengio, Eugene Brevdo, Francois Chollet, Aidan N. Gomez, Stephan Gouws, Llion Jones, Łukasz Kaiser, Nal Kalchbrenner, Niki Parmar, Ryan Sepassi, Noam Shazeer, Jakob Uszkoreit, Ashish Vaswani.




1 Abbiamo incluso una serie di set di dati per la classificazione di immagini (MNIST, CIFAR-10, CIFAR-100, ImageNet), le didascalie per immagini (MS COCO), la traduzione (WMT con più lingue tra cui inglese-tedesco e inglese-francese), la modellazione linguistica (LM1B ), il parsing (Penn Treebank), l'inferenza del linguaggio naturale (SNLI), il riconoscimento vocale (TIMIT), i problemi algoritmici (oltre una dozzina di attività dall'inversione mediante somma e moltiplicazione all'algebra) e ne aggiungeremo altri. Non vediamo l'ora di ricevere anche i tuoi set di dati.

2 Comprende RNN sequenza per sequenza LSTM, reti convolutive anche con convoluzioni separabili (ad es. Xception), modelli ricercati recentemente come ByteNet o la GPU neurale e i nuovi avanzatissimi modelli citati in questo post, che aggiorneremo costantemente nel repository.





Pubblicato da Wayne Piekarski, Developer Advocate per IoT
Annunciamo l'uscita dell'Anteprima per sviluppatori 4.1 (DP4.1) di Android Things che introduce gli aggiornamenti per il nuovo hardware supportato e le correzioni di bug per la piattaforma. Android Things è la piattaforma di Google ideata per consentire agli sviluppatori Android di creare dispositivi Internet of Things (IoT) e passare con facilità dal prototipo alla produzione.
Pubblicato da Wayne Piekarski, Developer Advocate per IoT
Annunciamo l'uscita dell'Anteprima per sviluppatori 4.1 (DP4.1) di Android Things che introduce gli aggiornamenti per il nuovo hardware supportato e le correzioni di bug per la piattaforma. Android Things è la piattaforma di Google ideata per consentire agli sviluppatori Android di creare dispositivi Internet of Things (IoT) e passare con facilità dal prototipo alla produzione.

Nuovo hardware


È stata rilasciata la nuova scheda Pico i.MX6UL revisione B che supporta molte periferiche esterne comuni fornite da partner come Adafruit e Pimoroni. Alcuni dei prototipi della scheda Pico i.MX6UL, che erano disponibili per tester beta in passato, non sono compatibili con la DP4.1.

Miglioramenti


La DP4.1 presenta anche alcuni miglioramenti delle prestazioni rispetto alla DP4, come le ottimizzazioni che riducono il tempo di avvio dell'hardware basato su i.MX7D. L'anteprima per sviluppatori include anche una versione di Google Play Services ottimizzata appositamente per i dispositivi IoT. Questa nuova variante IoT è molto più piccola, è ottimizzata per l'uso con Android Things e richiede play-services 11.0.0 o versione successiva nel build.gradle. Per ulteriori informazioni sulle funzionalità supportate nella variante IoT di Google Play Services, consulta la pagina informativa.

Google I/O


La presenza di Android Things si è fatta sentire in occasione dell'ultimo Google I/O con 7 interventi sui diversi aspetti di Android Things per sviluppatori, che sono ora disponibili in formato video in una playlist per chi non ha potuto partecipare:
Novità per la piattaforma Google di IoT? Ubiquitous Computing a Google
Produzione di dispositivi disponibile per tutti con Android Things
Dal prototipo alla produzione di dispositivi con Android Things
Sviluppo per Android Things con Android Studio
Sicurezza per IoT su Android Things
Utilizzo di Google Cloud e TensorFlow su Android Things
Creazione per gli utenti d'impresa IoT con Android Things e Google Cloud Platform

Durante Google I/O è stata anche resa disponibile un'area codelab nella quale i partecipanti hanno potuto testare lo sviluppo di Android Things avvalendosi di alcune semplici guide di formazione. Ora chiunque può provare questi codelab su https://codelabs.developers.google.com/?cat=IoT

Feedback


Ringraziamo tutti gli sviluppatori per il loro feedback sulle precedenti anteprime per sviluppatori. Continua a inviarci il tuo feedback con le segnalazioni di bug e le richieste di funzionalità e mandaci qualsiasi domanda a stackoverflow. Per scaricare le immagini di DP4.1, visita la pagina di download Android Things e scopri le ultime modifiche illustrate nelle note sulla versione. Puoi anche partecipare alla Community di sviluppatori IoT di Google su Google+, un'ottima risorsa per ricevere aggiornamenti e comunicare con oltre 5.600 altri membri.


In Google, amiamo avere conversazioni faccia a faccia con voi sviluppatori. Ci aiutano meglio a capire i vostri bisogni e migliorare la nostra offerta, così da rappresentare il mercato variegato in cui operiamo. Organizzare eventi è, per noi, un bel modo per avere queste conversazioni. Oggi apriamo le registrazioni per l’edizione europea della nostra serie di eventi globali - i ...

In Google, amiamo avere conversazioni faccia a faccia con voi sviluppatori. Ci aiutano meglio a capire i vostri bisogni e migliorare la nostra offerta, così da rappresentare il mercato variegato in cui operiamo. Organizzare eventi è, per noi, un bel modo per avere queste conversazioni. Oggi apriamo le registrazioni per l’edizione europea della nostra serie di eventi globali - i Google Developer Days (GDD). I Google Developer Days sono eventi in cui mostriamo gli ultimi aggiornamenti sui nostri prodotti e piattaforme, per aiutarvi a sviluppare applicazioni di qualità, far crescere e mantenere una base utente attiva e guadagnare di più.

GDD Europe avverrà il 5-6 Settembre a Cracovia, in Polonia. Ci saranno talk tecnici su diversi prodotti, incluso Android, Mobile Web, Firebase, Cloud, Machine Learning e IoT. In aggiunta, ci saranno opportunità per partecipare a sessioni hands-on, e la possibilità di parlare faccia a faccia con i Googlers e i Google Developer Experts.

Se sei interessato a partecipare ai GDD Europe, la registrazione è aperta.

Nel caso non riuscissi a venire, nessun problema. Tutti le sessioni saranno trasmesse in live streaming sul canale YouTube Google Developers, oltre ad essere registrate e rese disponibili dopo l’evento. E ci saranno anche diversi GDD Extended event organizzati in tutta Europa, per assistere all’evento assieme ad altri sviluppatori a te vicini.


Sia se parteciperai con noi di persona, sia da remoto, rimani aggiornato sulle ultime novità usando l'hashtag #GDDEurope su Twitter, Facebook, e Google+.


Può capitare a tutti: lavori incessantemente per creare una bella app, passi ore infinite a fare il testing beta e a risolvere i bug dopo aver creato un piano di marketing completo giusto in tempo per il lancio dell'app. Mesi di febbrile attesa finalmente culminano nell'invio dell'app all'App Store... ma invece di celebrare la nuova release, scopri che l'app non ha soddisfatto i requisiti necessari per l'inserimento negli elenchi ed è stata rifiutata.
Pubblicato da Joshua Liebowitz, Software Engineer


Può capitare a tutti: lavori incessantemente per creare una bella app, passi ore infinite a fare il testing beta e a risolvere i bug dopo aver creato un piano di marketing completo giusto in tempo per il lancio dell'app. Mesi di febbrile attesa finalmente culminano nell'invio dell'app all'App Store... ma invece di celebrare la nuova release, scopri che l'app non ha soddisfatto i requisiti necessari per l'inserimento negli elenchi ed è stata rifiutata.

Non c'è nulla di più demoralizzante che inciampare proprio prima del traguardo.

Le linee guida dell'App Store possono essere complicate e difficili da ricordare perché cambiano costantemente; ciò non toglie che gli sviluppatori devono rispettarle per far approvare le loro app. A volte è facile trascurare o ignorare queste linee guida nel mezzo di tutte le altre importanti operazioni di prelancio. Per aiutarti a evitare inutili ritardi e rifiuti, siamo molto contenti di presentare Fastlane precheck per le app iOS! Ora puoi contare su di noi per rammentare le regole e inviare la tua app in tutta tranquillità.

Ricontrolla la tua app in pochi secondi per evitare giorni di ritardi


Spesso le app vengono rifiutate dagli App Store a causa di problemi semplici e risolvibili riguardanti i metadati (ad esempio titolo, descrizione, changelog, parole chiave ecc.). Una volta respinta, l'app deve essere reinviata e possono passare giorni prima che venga ricontrollata. È uno spreco di tempo e può influire sulla tua tabella di marcia.

Invece di rischiare di ricevere un rifiuto o di dover faticosamente verificare i metadati, da ora puoi utilizzare Fastlane precheck per risparmiare tempo e fatica. Fastlane esaminerà la tua app alla ricerca delle cause più comuni di rifiuto.

Ad esempio i metadati saranno analizzati per controllare che rispettino le seguenti regole dell'App Store iOS:
  1. Nella descrizione non sono menzionate altre piattaforme
  2. Nel testo non sono presenti parolacce
  3. Non sono presenti placeholder
  4. Non sono presenti URL interrotti

Se rileviamo qualche problema, te lo segnaleremo così potrai risolverlo prima di inviare l'app all'App Store. Visto che Fastlane può scaricare automaticamente i metadati della tua app, tutto questo processo richiederà solo pochi secondi!

Altre novità interessanti in arrivo


Fastlane precheck è il primo strumento nuovo che abbiamo aggiunto al nostro toolkit per l'automazione di app dopo l'ingresso in Google e abbiamo in serbo per te altri aggiornamenti ancora più interessanti! Dopo esserci posizionati in questo nuovo ambito, non vediamo l'ora di rendere disponibile Fastlane alla dinamica community di sviluppatori iOS e Android.

Per il momento installa Fastlane o aggiorna la tua versione di Fastlane (basta eseguire `fastlane update_fastlane`) per provare Precheck e inviare la tua app in tutta tranquillità.
Originariamente questo post è stato pubblicato nel blog Fabric. Fastlane è un set di strumenti per l'implementazione e l'automazione di app entrato a far parte di Firebase a gennaio nell'ambito dell'acquisizione di Fabric.



I container sono una metodologia ripetibile e affidabile di implementazione sulla Google Cloud Platform (GCP). Visto il numero sempre crescente di richieste di adozione dei container, riscontriamo una chiara necessità di offrire più container preconfezionati, sicuri e mantenuti, che i clienti possano implementare facilmente nel loro ambiente. In occasione di Google Cloud Next '17, abbiamo ...


I container sono una metodologia ripetibile e affidabile di implementazione sulla Google Cloud Platform (GCP). Visto il numero sempre crescente di richieste di adozione dei container, riscontriamo una chiara necessità di offrire più container preconfezionati, sicuri e mantenuti, che i clienti possano implementare facilmente nel loro ambiente. In occasione di Google Cloud Next '17, abbiamo lanciato le immagini base di runtime dei container per Debian, Ruby, OpenJDK, Jetty, Node.js e ASP.NET Core. Oggi siamo lieti di aggiungere i seguenti container gestiti da Google:


Le soluzioni container di Google sono gestite dagli sviluppatori di Google. Dal momento che manteniamo le immagini, i container disponibili su Google Cloud Launcher saranno aggiornati in base agli ultimi aggiornamenti delle applicazioni e di sicurezza.

Le soluzioni usate per costruire i container sono disponibili su GitHub affinché sia visibile pubblicamente come sono state create. Puoi utilizzare gli script e modificarli per creare la tua particolare versione di container. Ci impegniamo a garantire che i container non siano gonfiati e siano immagini "vanilla" (ossia standard, semplici).

A parte quello per l'infrastruttura, non ci sono costi aggiuntivi per utilizzare questi container, e sono compatibili con Docker e Kubernetes. Le immagini di container possono essere usate sulla GCP con Google App Engine, Google Container Engine, Docker o persino al di fuori della GCP in un ambiente Kubernetes in locale. Sono soluzioni a livello di produzione, ossia puoi implementarle su una macchina virtuale compatibile e gestire la tua attività da lì.

Il nostro team di sviluppatori desidera ricevere i feedback quindi sentiti libero di pubblicare sull'Issue tracker di GitHub in relazione alle soluzioni container, inclusi gli eventuali problemi o le richieste di funzionalità. Guarda l'elenco completo delle soluzioni container open source gestite dai Googler qui.

Se ancora non conosci GCP, puoi facilmente iniziare dai 300 dollari di credito che offriamo per 12 mesi.

Pubblicato da Erik Pasternak e il Kids Coding Team
Negli ultimi cinque anni gli sviluppatori hanno creato centinaia di progetti con Blockly, la nostra libreria open source per la creazione di esperienze di programmazione basate su blocchi, che spaziano da piattaforme educative come ...
Pubblicato da Erik Pasternak e il Kids Coding Team
Negli ultimi cinque anni gli sviluppatori hanno creato centinaia di progetti con Blockly, la nostra libreria open source per la creazione di esperienze di programmazione basate su blocchi, che spaziano da piattaforme educative come Code.org a kit elettronici come littleBits e persino a strumenti di creazione di app Android come MIT App Inventor. Lo scorso anno abbiamo annunciato la nostra collaborazione con lo Scratch Team per sviluppare Scratch Blocks, un fork di Blockly ottimizzato per creare app di scrittura di codice per bambini.

Abbiamo finalizzato la release 1.0 di Blockly per Android e iOS. Queste versioni dispongono di tutto ciò che serve per utilizzare Blockly in modalità nativa nelle app mobili, tra cui:
  • UI standard di Blockly
  • Blocchi, categorie di toolbox, e layout personalizzati
  • Funzioni, variabili, mutatori ed estensioni
  • Generazione di codice in JavaScript, Python, Dart, PHP e Lua
  • Supporto per internazionalizzazione (anche per le lingue RTL)

Anche se il nostro aggiornamento 1.0 è incentrato sui dispositivi mobili nativi, negli ultimi sei mesi abbiamo creato diversi aggiornamenti anche per il progetto web. Abbiamo apportato importanti modifiche alle prestazioni e al testing e aggiunto API più strutturate e un supporto touch migliorato per il web mobile. Abbiamo anche migliorato il supporto per Internet Explorer e Edge, ora infatti Blockly è completamente supportato su IE10+.

Inoltre ci siamo impegnati molto per cercare di semplificare lo sviluppo multipiattaforma! Ora tutti i blocchi possono essere definiti da JSON, permettendoti così di utilizzare un unico insieme di definizioni in blocco per web, iOS e Android. Per ulteriori dettagli su tutte e tre le piattaforme ti segnaliamo questa documentazione.

Inizia subito con il nostro Codelab iOS (presto anche Android)! Per saperne di più su Blockly guarda questo video introduttivo, visita il nostro sito web per sviluppatori, iscriviti alla nostra mailing list o inizia subito a scrivere il codice per web, Android o iOS.

Pubblicato da Krista Seiden, Firebase Analytics


A Firebase sappiamo che il primo passo verso il miglioramento delle app è capire come gli utenti interagiscono con loro: quali parti amano, in quali parti hanno difficoltà e quali parti purtroppo non utilizzano. Per questo motivo abbiamo creato Google Analytics for Firebase partendo da zero e abbiamo ottenuto una soluzione di analisi mobile completa, dotata di analisi delle app gratuita e illimitata, appositamente progettata per app mobili.

Se hai letto bene l'ultima frase, avrai notato che il prodotto precedentemente conosciuto come Firebase Analytics ora si chiama "Google Analytics for Firebase". Non ti preoccupare, si tratta dello stesso prodotto analitico che conosci e ami, e più tardi parleremo di questo cambiamento di nome.

Nell'ultimo anno abbiamo apportato diversi miglioramenti a Google Analytics for Firebase, inclusa l'aggiunta di StreamView, che ti dà un'idea di come gli utenti interagiscono con l'app in un preciso momento, e DebugView, che ti consente di visualizzare nel dettaglio quali eventi di analisi (ed errori!) potrebbero verificarsi in un dispositivo di prova.

Quest'anno in occasione di Google I/O, siamo stati contentissimi di annunciare molti nuovi miglioramenti che rendono l'analisi dei dati ancora più efficace. Se non hai potuto seguire gli interventi (guardali su YouTube), ti offriamo un breve riepilogo delle ultime novità su Google Analytics for Firebase.

Reporting dei parametri personalizzati


Con Google Analytics for Firebase puoi inviare fino a 25 parametri personalizzati insieme a qualsiasi evento che registri nella tua app. Ad esempio, se devi inviare un evento end_of_round in un gioco, puoi inviare un parametro user_score o premium_coins_earned insieme a quell'evento. Analizzando questi diversi valori dei parametri, puoi quindi assicurarti che il tuo gioco abbia la distribuzione di punteggio elevato o di tasso di payout generale che desideri.

Ma finora è stato impossibile visualizzare i risultati della maggior parte di questi parametri evento personalizzati senza prima esportarli in BigQuery per eseguire l'analisi. Essere in grado di visualizzare i riepiloghi di questi parametri evento direttamente nella Console Firebase è la richiesta di funzionalità che abbiamo ricevuto più frequentemente da quando Analytics è stato lanciato l'anno scorso. Quindi siamo molto lieti di annunciare che sono stati intrapresi i primi passi necessari per rendere disponibili questi report.

Per iniziare a utilizzare i parametri evento personalizzati in Firebase, devi comunicare a Google Analytics for Firebase quali sono i parametri che ti interessano. Per fare ciò, vai all'evento desiderato nella Console Firebase e fai clic su "Aggiungi parametri evento" nell'interfaccia. Da lì puoi specificare un parametro, annotare se è un numero o una stringa ed eventualmente aggiungere le unità di misura.

Una volta effettuate queste operazioni, i riepiloghi dei parametri saranno visualizzati direttamente nella console. Ti mostreremo somme e medie dei valori numerici e un elenco dei valori più comuni per le stringhe.

Come per gli altri report di analisi disponibili in Google Analytics for Firebase, è possibile filtrare questi report in base alle proprietà utente o al tipo di pubblico, per comprendere meglio come utenti diversi interagiscono con l'app in modi diversi.

Attualmente puoi generare report di riepilogo con un massimo di 50 parametri evento differenti.

Livello gratuito di archiviazione in BigQuery


Naturalmente se desideri analizzare un maggior numero di parametri evento personalizzati o vuoi eseguire un'analisi più avanzata di quella offerta dalla Console Firebase, ora puoi esportare i dati di Google Analytics direttamente in BigQuery, il data warehouse di Google nel cloud. L'analisi dei dati in BigQuery è molto potente e consente di eseguire qualsiasi tipo di query ad hoc o analisi personalizzata sui dati, pertanto incoraggiamo tutti i nostri sviluppatori a provarla.

Per assisterti in questo processo, abbiamo aggiunto un livello gratuito di archiviazione a BigQuery (10 GB di dati, a essere esatti) per ogni progetto che sfrutta Google Analytics for Firebase. Combina questo livello di archiviazione gratuito con l'utilizzo di 1 TB di query mensili gratuite fornito da BigQuery e potrai eseguire una grande quantità di analisi BigQuery pagando una cifra irrisoria. E con i nuovi modelli di report analitici in Data Studio, rendere eleganti i report sui parametri personalizzati (o su qualsiasi altro valore che puoi misurare in BigQuery) diventa un gioco da ragazzi.


Firebase e AdMob


Abbiamo apportato alcuni importanti miglioramenti alla comunicazione tra Firebase e AdMob. Proprio come il caffellatte e i biscotti, mettere insieme Firebase e AdMob produce una nuova emozionante combinazione di sapori che integra i punti di forza di entrambi i prodotti.

Grazie al collegamento dell'account AdMob con Firebase, l'app registra automaticamente gli eventi di analisi associati ad AdMob (insieme alle unità pubblicitarie mediate), proprio come nel caso di qualsiasi altro evento analitico. Ciò consente a Google Analytics for Firebase di creare report su impressioni, clic e tempi di esposizione degli annunci, suddividendoli in base alle caratteristiche importanti, quali schermo, formato dell'annuncio o unità pubblicitaria. Questo rende più facile che mai scoprire quali siano gli annunci più efficaci, più redditizi e visualizzati più a lungo dell'app.

Collegare gli account AdMob e Firebase offre inoltre un quadro completo di quali siano le aree più proficue della tua app. Sia i report APRU del dashboard sia le metriche Lifetime Value dei report di Attribuzione ora includono i ricavi generati dalla pubblicità AdMob nonché dagli acquisti in-app.

Ciò contribuisce a ottenere una migliore comprensione di quali siano le entrate dell'app e a valutare con maggiore precisione quali campagne di crescita attirano gli utenti che spendono di più.

Tracking automatico delle schermate


Se, come nel mio caso, ti piace trascorrere il tempo libero a leggere le ultime note sulla versione di Firebase, avrai notato che alcuni mesi fa Firebase ha iniziato ad aggiungere il supporto per il tracking delle schermate agli eventi che stava registrando. Questo mese abbiamo aggiunto i report di tracking delle schermate in Google Analytics for Firebase che ti consentono di vedere le prime tre schermate che gli utenti si soffermano a guardare. Puoi visualizzare queste informazioni nella sezione User Engagement del Dashboard Firebase.



Il reporting sul tracking delle schermate lavora dietro le quinte registrando automaticamente un evento screen_view ogni volta che si verifica una transizione di schermata. Gli eventi vengono poi combinati sul server per offrire un quadro più completo del percorso dell'utente nell'ambito dell'app. Proprio come gli altri eventi, puoi visualizzarli in StreamView, DebugView o analizzarli con BigQuery. Se desideri personalizzare questi eventi (ad esempio, sei uno sviluppatore di giochi che dispone di più "schermate", tutte all'interno dello stesso ViewController), puoi farlo utilizzando l'impostazione manuale di questi eventi sul client.

Maggiore attribuzione dei partner


Puoi già utilizzare Google Analytics for Firebase per il monitoraggio delle attribuzioni che ti aiuta a scoprire, non solo quali reti pubblicitarie ti inviano gli utenti, ma quali inviano gli utenti preziosi che ti interessano di più. Siamo lieti di annunciare una nuova integrazione con DoubleClick Digital Marketing che includerà il monitoraggio dell'attribuzione per DoubleClick Campaign Manager e Bid Manager. Aggiungilo alle oltre 50 reti pubblicitarie di terze parti (sempre in aumento!) integrate nel nostro sistema e Firebase potrà aiutarti a prendere la decisione giusta su come investire nella pubblicità grazie a dati concreti di attribuzione cross-network.


Nome nuovo, stesso fantastico prodotto

Abbiamo sostituito il marchio Firebase Analytics con Google Analytics for Firebase per rendere chiaro che da ora in poi questa è la soluzione di analisi che consigliamo per tutte le app mobili. In realtà dietro le quinte continuerai a utilizzare l'SDK Firebase Analytics con il suo modello basato su eventi per generare i tuoi dati di analisi.
Se usi il vecchio SDK di Google Analytics Services nelle tue app esistenti, non ti preoccupare: non andrà da nessuna parte, ma ti consigliamo di iniziare ad aggiungere l'SDK Firebase nelle versioni future. L'utilizzo dell'SDK Firebase ti consente di accedere agli ultimi report di Google Analytics for Firebase e alle nuove funzionalità appena diventano disponibili. Se sei un fan di Google Analytics di lunga data, puoi anche sfruttare Google Tag Manager per inviare automaticamente i dati degli eventi a quei report. Per ulteriori informazioni su questo argomento, abbiamo scritto un post del blog qualche mese fa che descrive alcune strategie per far lavorare insieme queste librerie di analisi nella tua app. Leggilo appena puoi.

Provalo subito!


Siamo contentissimi di aver apportato questi miglioramenti a Google Analytics for Firebase, che sono ora disponibili nel seguente documento Leggilo prima o poi (vai a vedere il progetto demo come esempio). Se ancora non hai aggiunto Analytics al tuo prodotto, puoi trovare qui tutta la documentazione necessaria per farlo. Provalo e facci sapere cosa ne pensi!


Pubblicato da Krista Seiden, Firebase Analytics


A Firebase sappiamo che il primo passo verso il miglioramento delle app è capire come gli utenti interagiscono con loro: quali parti amano, in quali parti hanno difficoltà e quali parti purtroppo non utilizzano. Per questo motivo abbiamo creato Google Analytics for Firebase partendo da zero e abbiamo ottenuto una soluzione di analisi mobile completa, dotata di analisi delle app gratuita e illimitata, appositamente progettata per app mobili.

Se hai letto bene l'ultima frase, avrai notato che il prodotto precedentemente conosciuto come Firebase Analytics ora si chiama "Google Analytics for Firebase". Non ti preoccupare, si tratta dello stesso prodotto analitico che conosci e ami, e più tardi parleremo di questo cambiamento di nome.

Nell'ultimo anno abbiamo apportato diversi miglioramenti a Google Analytics for Firebase, inclusa l'aggiunta di StreamView, che ti dà un'idea di come gli utenti interagiscono con l'app in un preciso momento, e DebugView, che ti consente di visualizzare nel dettaglio quali eventi di analisi (ed errori!) potrebbero verificarsi in un dispositivo di prova.

Quest'anno in occasione di Google I/O, siamo stati contentissimi di annunciare molti nuovi miglioramenti che rendono l'analisi dei dati ancora più efficace. Se non hai potuto seguire gli interventi (guardali su YouTube), ti offriamo un breve riepilogo delle ultime novità su Google Analytics for Firebase.

Reporting dei parametri personalizzati


Con Google Analytics for Firebase puoi inviare fino a 25 parametri personalizzati insieme a qualsiasi evento che registri nella tua app. Ad esempio, se devi inviare un evento end_of_round in un gioco, puoi inviare un parametro user_score o premium_coins_earned insieme a quell'evento. Analizzando questi diversi valori dei parametri, puoi quindi assicurarti che il tuo gioco abbia la distribuzione di punteggio elevato o di tasso di payout generale che desideri.

Ma finora è stato impossibile visualizzare i risultati della maggior parte di questi parametri evento personalizzati senza prima esportarli in BigQuery per eseguire l'analisi. Essere in grado di visualizzare i riepiloghi di questi parametri evento direttamente nella Console Firebase è la richiesta di funzionalità che abbiamo ricevuto più frequentemente da quando Analytics è stato lanciato l'anno scorso. Quindi siamo molto lieti di annunciare che sono stati intrapresi i primi passi necessari per rendere disponibili questi report.

Per iniziare a utilizzare i parametri evento personalizzati in Firebase, devi comunicare a Google Analytics for Firebase quali sono i parametri che ti interessano. Per fare ciò, vai all'evento desiderato nella Console Firebase e fai clic su "Aggiungi parametri evento" nell'interfaccia. Da lì puoi specificare un parametro, annotare se è un numero o una stringa ed eventualmente aggiungere le unità di misura.

Una volta effettuate queste operazioni, i riepiloghi dei parametri saranno visualizzati direttamente nella console. Ti mostreremo somme e medie dei valori numerici e un elenco dei valori più comuni per le stringhe.

Come per gli altri report di analisi disponibili in Google Analytics for Firebase, è possibile filtrare questi report in base alle proprietà utente o al tipo di pubblico, per comprendere meglio come utenti diversi interagiscono con l'app in modi diversi.

Attualmente puoi generare report di riepilogo con un massimo di 50 parametri evento differenti.

Livello gratuito di archiviazione in BigQuery


Naturalmente se desideri analizzare un maggior numero di parametri evento personalizzati o vuoi eseguire un'analisi più avanzata di quella offerta dalla Console Firebase, ora puoi esportare i dati di Google Analytics direttamente in BigQuery, il data warehouse di Google nel cloud. L'analisi dei dati in BigQuery è molto potente e consente di eseguire qualsiasi tipo di query ad hoc o analisi personalizzata sui dati, pertanto incoraggiamo tutti i nostri sviluppatori a provarla.

Per assisterti in questo processo, abbiamo aggiunto un livello gratuito di archiviazione a BigQuery (10 GB di dati, a essere esatti) per ogni progetto che sfrutta Google Analytics for Firebase. Combina questo livello di archiviazione gratuito con l'utilizzo di 1 TB di query mensili gratuite fornito da BigQuery e potrai eseguire una grande quantità di analisi BigQuery pagando una cifra irrisoria. E con i nuovi modelli di report analitici in Data Studio, rendere eleganti i report sui parametri personalizzati (o su qualsiasi altro valore che puoi misurare in BigQuery) diventa un gioco da ragazzi.


Firebase e AdMob


Abbiamo apportato alcuni importanti miglioramenti alla comunicazione tra Firebase e AdMob. Proprio come il caffellatte e i biscotti, mettere insieme Firebase e AdMob produce una nuova emozionante combinazione di sapori che integra i punti di forza di entrambi i prodotti.

Grazie al collegamento dell'account AdMob con Firebase, l'app registra automaticamente gli eventi di analisi associati ad AdMob (insieme alle unità pubblicitarie mediate), proprio come nel caso di qualsiasi altro evento analitico. Ciò consente a Google Analytics for Firebase di creare report su impressioni, clic e tempi di esposizione degli annunci, suddividendoli in base alle caratteristiche importanti, quali schermo, formato dell'annuncio o unità pubblicitaria. Questo rende più facile che mai scoprire quali siano gli annunci più efficaci, più redditizi e visualizzati più a lungo dell'app.

Collegare gli account AdMob e Firebase offre inoltre un quadro completo di quali siano le aree più proficue della tua app. Sia i report APRU del dashboard sia le metriche Lifetime Value dei report di Attribuzione ora includono i ricavi generati dalla pubblicità AdMob nonché dagli acquisti in-app.

Ciò contribuisce a ottenere una migliore comprensione di quali siano le entrate dell'app e a valutare con maggiore precisione quali campagne di crescita attirano gli utenti che spendono di più.

Tracking automatico delle schermate


Se, come nel mio caso, ti piace trascorrere il tempo libero a leggere le ultime note sulla versione di Firebase, avrai notato che alcuni mesi fa Firebase ha iniziato ad aggiungere il supporto per il tracking delle schermate agli eventi che stava registrando. Questo mese abbiamo aggiunto i report di tracking delle schermate in Google Analytics for Firebase che ti consentono di vedere le prime tre schermate che gli utenti si soffermano a guardare. Puoi visualizzare queste informazioni nella sezione User Engagement del Dashboard Firebase.



Il reporting sul tracking delle schermate lavora dietro le quinte registrando automaticamente un evento screen_view ogni volta che si verifica una transizione di schermata. Gli eventi vengono poi combinati sul server per offrire un quadro più completo del percorso dell'utente nell'ambito dell'app. Proprio come gli altri eventi, puoi visualizzarli in StreamView, DebugView o analizzarli con BigQuery. Se desideri personalizzare questi eventi (ad esempio, sei uno sviluppatore di giochi che dispone di più "schermate", tutte all'interno dello stesso ViewController), puoi farlo utilizzando l'impostazione manuale di questi eventi sul client.

Maggiore attribuzione dei partner


Puoi già utilizzare Google Analytics for Firebase per il monitoraggio delle attribuzioni che ti aiuta a scoprire, non solo quali reti pubblicitarie ti inviano gli utenti, ma quali inviano gli utenti preziosi che ti interessano di più. Siamo lieti di annunciare una nuova integrazione con DoubleClick Digital Marketing che includerà il monitoraggio dell'attribuzione per DoubleClick Campaign Manager e Bid Manager. Aggiungilo alle oltre 50 reti pubblicitarie di terze parti (sempre in aumento!) integrate nel nostro sistema e Firebase potrà aiutarti a prendere la decisione giusta su come investire nella pubblicità grazie a dati concreti di attribuzione cross-network.


Nome nuovo, stesso fantastico prodotto

Abbiamo sostituito il marchio Firebase Analytics con Google Analytics for Firebase per rendere chiaro che da ora in poi questa è la soluzione di analisi che consigliamo per tutte le app mobili. In realtà dietro le quinte continuerai a utilizzare l'SDK Firebase Analytics con il suo modello basato su eventi per generare i tuoi dati di analisi.
Se usi il vecchio SDK di Google Analytics Services nelle tue app esistenti, non ti preoccupare: non andrà da nessuna parte, ma ti consigliamo di iniziare ad aggiungere l'SDK Firebase nelle versioni future. L'utilizzo dell'SDK Firebase ti consente di accedere agli ultimi report di Google Analytics for Firebase e alle nuove funzionalità appena diventano disponibili. Se sei un fan di Google Analytics di lunga data, puoi anche sfruttare Google Tag Manager per inviare automaticamente i dati degli eventi a quei report. Per ulteriori informazioni su questo argomento, abbiamo scritto un post del blog qualche mese fa che descrive alcune strategie per far lavorare insieme queste librerie di analisi nella tua app. Leggilo appena puoi.

Provalo subito!


Siamo contentissimi di aver apportato questi miglioramenti a Google Analytics for Firebase, che sono ora disponibili nel seguente documento Leggilo prima o poi (vai a vedere il progetto demo come esempio). Se ancora non hai aggiunto Analytics al tuo prodotto, puoi trovare qui tutta la documentazione necessaria per farlo. Provalo e facci sapere cosa ne pensi!


Pubblicato da Maxim Mai, Apps Partnerships, Google Play
In occasione di Google I/O 2017, abbiamo annunciato i vincitori della Google Play Awards di quest'anno. Prenditi un po' di popcorn e guarda la cerimonia di premiazione. Non sarà da meno di quella degli Oscar! Quest'anno abbiamo aggiunto una categoria per celebrare i successi degli sviluppatori che pubblicano app eccezionali dall'impatto sociale positivo.

Nell'introdurre questa categoria di premi, ci siamo ispirati ai 17 Obiettivi di Sviluppo Sostenibile (SDG) delle Nazioni Unite. Dal momento che sono in grado di raggiungere oltre un miliardo di dispositivi Android attivi in tutto il mondo, riteniamo che gli sviluppatori abbiano un'opportunità fantastica di fare la differenza nei programmi Fame Zero (SDG n. 2), Salute e benessere (SDG n. 3), Istruzione di qualità (SDG n. 4) e molti altri ancora. Continua a leggere per saperne di più sul vincitore e sui finalisti di quest'anno e il loro impatto su questi obiettivi.

Contattaci per parlare della tua app o del tuo gioco d'impatto sociale


Il nostro lavoro nel sostenere il successo degli sviluppatori in quest'area su Android e Google Play è solo all'inizio. Vorremmo incoraggiare gli sviluppatori Android che si impegnano nel sociale a mettersi in contatto con noi qui a Google Play e a parlarci della loro app o gioco. Non importa dove ti trovi, quali problemi stai risolvendo o a quali paesi ti rivolgi, vorremmo conoscere la tua storia e magari aiutarti a crescere più velocemente e a migliorare la qualità della tua app.

Vincitore e finalisti d'impatto sociale della Google Play Awards 2017

ShareTheMeal delle Nazioni Unite

Il vincitore della categoria Google Play Awards, ShareTheMeal, crea una grande consapevolezza globale per il programma "Fame Zero" e le donazioni degli utenti servono a pagare i pasti nelle scuole forniti da World Food Programme nelle regioni di tutto il mondo colpite dall'insicurezza alimentare. Dal suo lancio più di 13 milioni di pasti sono stati donati tramite l'app!
Charity Miles di Charity Miles

Si tratta di un'app con impatto sociale che monitora la corsa, la camminata e l'andare in bicicletta. Charity Miles raccoglie fondi di beneficenza da parte degli utenti per ogni miglio che percorrono tramite i suoi sponsor di fitness di marca. Gli utenti hanno già donato 2 milioni di dollari in beneficenza, registrando oltre 40 milioni di miglia!
Peek Acuity di Peak Vision

Peek Acuity consente a chiunque abbia un telefono Android di misurare facilmente l'acutezza visiva, che è una delle abilità visive principali. L'app è stata progettata da professionisti dell'ottica per aiutare a identificare le persone che possono aver bisogno di un ulteriore esame, ad esempio da parte di un optometrista o un oculista. Nei paesi in via di sviluppo, molte sono le persone che lottano con disabilità visive e molti non hanno facile accesso a uno specialista.
Prodeaf Translator di ProDeaf Tecnologias Assistivas

Questa app permette a chiunque di tradurre frasi e parole dal portoghese alla Lingua dei segni brasiliana (Libras) o dall'inglese alla Lingua dei segni americana (ASL). Ciò riduce notevolmente le barriere di comunicazione tra milioni di persone che dipendono da Libras o ASL come "lingua franca" e per altri che non hanno avuto l'opportunità di imparare questa forma di comunicazione.
Sea Hero Quest di GLITCHERS

Non è solo un gioco, è una missione per aiutare gli scienziati a combattere la demenza! Sembra troppo bello per essere vero ma è proprio un gioco nel quale, pur divertendoti a inseguire creature che popolano mari magici e paludi, puoi contribuire a combattere una malattia che colpisce attualmente 45 milioni di persone nel mondo. Anzi giocando a SEA HERO QUEST per soli 2 minuti puoi generare l'equivalente di 5 ore di dati di ricerca di laboratorio.

Se stai lavorando su un'app o un gioco con un impatto sociale positivo, non dimenticare di metterti in contatto con noi tramite questo modulo e selezionare la casella di controllo "App di impatto sociale".
Quanto ti è stato utile questo post?