[AD.AGIO] ANDROID SDK

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "[AD.AGIO] ANDROID SDK"

Transcript

1 [AD.AGIO] ANDROID SDK Pag. 1

2 1. PREMESSA Il presente documento riporta informazioni riservate il cui utilizzo è confidenziale e permesso esclusivamente nell'ambito del rapporto di fornitura in atto. 2. INTRODUZIONE AdAgioSDK è una SDK per la gestione degli ads erogati dalla piattaforma [ad.agio] di Neodata Group, finalizzata ad integrare nella maniera più semplice possibile la logica di gestione degli ads direttamente all interno delle applicazioni Android, in maniera trasparente per gli sviluppatori delle applicazioni. Il presente manuale intende illustrare le operazioni di setup del progetto e le chiamate necessarie all integrazione dei banner pubblicitari delle proprie applicazioni da parte dei developer. 3. FORMATI La libreria AdAgioSDK è in grado di gestire banner standard ed interstitial, come da specifiche IAB MRAID (www.iab.net/mraid). Il banner standard è una strip statica cliccabile di dimensioni 320x50. Il click sul banner consente la visualizzazione della landing page su una nuova istanza del browser di sistema o su minibrowser modale. E possibile gestire rich-media di tipo espandibile, ovvero un banner con dimensioni iniziali standard, che si espande al click dell utente. La gestione dell espansione è totalmente a carico della SDK, ed equivale all apertura di un layer full-screen opportunamente provvisto di un bottone per la chiusura. Alla pressione sul tasto di chiusura il banner ritorna di dimensioni ridotte. 2 / 13

3 Il banner di tipo interstitial viene visualizzato su un layer full-screen espanso, provvisto di tasto per la chiusura. Il banner interstitial dovrà essere istanziato con dimensioni di partenza 1x1. Dopo la sua chiusura il banner non sarà più visibile. Il click sul banner permetterà la visualizzazione della landing page su una nuova istanza del browser di sistema o su minibrowser modale. 4. REFRESH DEL BANNER La libreria consente di impostare un tempo di refresh, per consentire l aggiornamento automatico del banner da visualizzare attraverso il metodo setrefreshrate(int refreshrate. L intero refreshrate indica il numero di secondi. Impostando zero (0) i banner non saranno mai aggiornati automaticamente. 5. MINIBROWSER MODALE Per l apertura della landing page al click sul banner, per evitare di perdere il focus della propria applicazione, AdAgioSDK incorpora un sistema di navigazione interna su finestra modale. Per utilizzarlo è necessario impostare la proprietà usemodalbrowser(true) sull oggetto banner. Diversamente le pagine verranno aperte su browser nativo esterno. 6. GESTIONE OFFLINE L SDK gestisce l assenza di connessione nei seguenti modi: 1. Se la rete manca sin da subito, non sarà mostrato alcun banner e verrà notificato il fallimento scatenando l evento onadfailure. Il banner verrà visualizzato non appena sarà fatta una nuova chiamata in presenza di connettività. 2. Se è stato impostato un tempo di refresh e al momento del refresh la rete manca, continuerà ad essere visualizzato l ultimo banner correttamente caricato, finché non sarà possibile effettuare un nuovo refresh. 3 / 13

4 Per ogni refresh in assenza di connettività verrà sempre notificato l evento onadfailure e non sarà mostrato alcun banner. 7. SETUP DEL PROGETTO ANDROID/ECLIPSE 7.1. IMPORTAZIONE DELLA LIBRERIA NEL PROGETTO Trasferire la libreria AdAgioSDK.jar sul proprio PC. Creare un folder libs nel progetto Eclipse/Android e copiarvi dentro il file AdAgioSDK.jar. Su Eclipse, cliccare col tasto destro sul progetto, selezionare Build Path, Configure Build Path. Cliccare sul tab Libraries, quindi Add Jars..., sfogliare le directory fino alla libs e selezionare AdAgioSDK Cliccare sul tab Order and export, quindi spuntare la casella relativa alla libreria AdAgioSDK.jar Da questo momento le classi incluse nella libreria saranno disponibili per Eclipse sia in fase di compilazione del progetto che di auto completamento del codice durante l editing IMPOSTAZIONE DEL MANIFEST Il file AndroidManifest.xml deve essere modificato al fine di includere, subito prima del tag application, le seguenti istruzioni per consentire l accesso alla rete: <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.read_phone_state" /> Per abilitare il servizio di geo-localizzazione dei banner è necessario inserire anche i seguenti permessi: 4 / 13

5 <uses-permission android:name="android.permission.access_coarse_location"/> <uses-permission android:name="android.permission.access_fine_location"/> Il servizio di georeferenziazione è tuttavia opzionale e la libreria fornisce dei metodi per disabilitare l inoltro delle coordinate geografiche anche in presenza dei relativi permessi sul manifest. All interno dell elemento application, occorre dichiarare il seguente servizio: <service android:name="com.neodata.adagiosdk.communicationmanagerservice"/> e abilitare l accelerazione hardware per consentire la corretta riproduzione di video banner: android:hardwareaccelerated="true" Infine, affinché un evento di rotazione del device o di apertura della tastiera fisica non causi la distruzione dell activity con conseguente duplicazione delle richieste di ad, occorre specificare dentro il tag activity l attributo: android:configchanges="orientation keyboardhidden screensize" 5 / 13

6 7.3. ESEMPIO COMPLETO DI ANDROIDMANIFEST.XML <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.neodata.adagiosdktest" android:versioncode="1"android:versionname="1.0" > <uses-sdk android:minsdkversion="8" android:targetsdkversion="17"/> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.read_phone_state" /> <uses-permission android:name="android.permission.access_coarse_location"/> <uses-permission android:name="android.permission.access_fine_location"/> <application android:hardwareaccelerated="true"> <service android:name = "com.neodata.adagiosdk.communicationmanagerservice"/> <activity android:name=".adagiosdktestactivity" android:configchanges="orientation keyboardhidden screensize" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> </application> </manifest> 6 / 13

7 8. API DI ADAGIOUTILS void disablelocationpermanently() inibisce globalmente e permanentemente la geo localizzazione API DI ADAGIOADV AdAgioADV( Activity activity, AdAgioADView adview) Costruttore AdAgioADV(Activity activity, int viewid) Costruttore AdAgioADV(Activity activity, int viewid, String clientid, String positionid) Costruttore AdAgioADV(Activity activity, AdAgioADView adview, String clientid, String positionid) Costruttore void setclientid(string clientid) setta il clientid (comunicato da Neodata) void setpositionid(string position) setta l identificativo della posizione dell ad (comunicato da Neodata) void setrefreshrate(int refreshrate) void disablelocation() setta l intervallo di tempo (in secondi) tra un refresh e il successivo. refreshrate= 0 disabilita il refresh automatico del banner disabilita la geolocalizzazione per questo ad 7 / 13

8 void setkw(string keywords) setta delle keyword separate da pipe ( ) (opzionale) void addadlistener(adagioadlistener adlistener) Assegna un AdAgioAdListener a questo ad void usemodalbrowser(boolean usemodal) Setta l utilizzo del browser modale per l apertura della landing page. - true: viene utilizzato un mini browser modale interno. - false: viene utilizzato il browser nativo. void loadadv() void loadinterstitial() Effettua la richiesta di caricamento del banner Effettua la richiesta di caricamento del banner interstitial API DI ADAGIOADVIEW AdAgioADV(Context context) AdAgioADV(Context context, AdvBannerSize adsize) Costruttore Costruttore API DI ADVBANNERSIZE AdvBannerSize.BANNER Fissa le dimensioni default per il Banner: width:320dp ed height: 50dp AdvBannerSize.INTERSTITIAL Fissa le dimensioni default per 8 / 13

9 l Interstitial: width:1dp ed height: 1dp API DELL INTERFACCIA ADAGIOADLISTENER void onadreceived() void onadfailure() void onclick() Notifica la corretta ricezione dell ad Fallimento nella procedura di caricamento dell ad, dovuto ad un problema di rete, errore di configurazione o assenza di banner da mostrare. Notifica dell avvenuto click sul banner 9. UTILIZZO IN FASE DI SVILUPPO 9.1. INSERIMENTO DELLE VIEW NEI LAYOUT Per poter integrare all interno di una Activity una finestra AdAgioADView per la visualizzazione di banner pubblicitari è necessario inserire una view del tipo com.neodata.adagiosdk.adagioadview all interno del layout (tramite file XML o programmaticamente). Tale view supporta tutti gli attributi tipici di una WebView, oltre a quelli comuni a tutte le View. E possibile inserire più di una AdAgioADView in ogni layout, con l ovvia accortezza di differenziarne l id. Le dimensioni tipiche per i banner standard sono 320x50, mentre l interstitial va settato con dimensioni di partenza 1x1. ESEMPIO 1. ADAGIOADVIEW BANNER TRAMITE XML <com.neodata.adagiosdk.adagioadview 9 / 13

10 android:layout_width="320dp" android:layout_height="50dp" android:layout_alignparenttop="true" android:layout_centerhorizontal="true" /> ESEMPIO 2. ADAGIOADVIEW INTERSTITIAL TRAMITE XML <com.neodata.adagiosdk.adagioadview android:layout_width="1dp" android:layout_height="1dp"/> 9.2. RICHIEDERE UN BANNER Per richiedere un banner occorre istanziare un oggetto della classe AdAgioADV, settare tutti i parametri obbligatori e chiamare il metodo: loadadv() per i banner o loadinterstitial()in caso di interstitial. I parametri obbligatori sono: - activity: activity che richiede il banner - adview: risorsa rappresentante la view AdAgioADView o il relativo identificativo (istanziato nel file XML di layout) - clientid: parametro comunicato da Neodata - positionid: parametro comunicato da Neodata ESEMPIO 3. ISTANZA DI ADAGIOADV PER BANNER CREATO TRAMITE LAYOUT XML // Creazione di una istanza di AdAgioADV: 10 / 13

11 AdAgioADV advertising = new AdAgioADV(this, R.id.myBanner); // Impostazione del ClientId, comunicato off band da Neodata: advertising.setclientid(neodata_client_id); // Impostazione del PositionID, comunicato off band da Neodata: advertising.setpositionid(neodata_position_id); // Impostazione delle keywords: advertising.setkw("these are example keywords"); //Impostazione AdAgioADListener per l ad advertising.addadlistener(new AdAgioADListener(){ public void onadfailure() { Chiamato metodo onadfailure"); public void onadreceived() { Chiamato metodo onadreceived"); public void onclick() { Chiamato metodo onclick"); ); try { advertising.loadadv(); catch (Exception e) { Log.d("TEST", e.tostring()); 11 / 13

12 ESEMPIO 4. ISTANZA DI ADAGIOADV PER INTERTITIAL CREATO PROGRAMMATICAMENTE //Creazione istanza AdAgioADView AdAgioADView adinterstitial = new AdAgioADView(this,AdvBannerSize.INTERSTITIAL); //Aggiunta oggetto AdAgioADView al layout LinearLayout layout = (LinearLayout)findViewById(R.id.layout); layout.addview(adinterstitial); //Creazione istanza AdAgioADV attraverso i parametri inviati off band da Neodata (sintassi compatta) AdAgioADV advertising = new AdAgioADV(this, adinterstitial, NEODATA_CLIENT_ID, NEODATA_POSITION_ID); // Impostazione delle keywords: advertising.setkw("these are example keywords"); //Impostazione AdAgioADListener per l ad advertising.addadlistener(new MyAdListener()); try { advertising.loadadv(); catch (Exception e) { Log.d("TEST", e.tostring()); 9.3. IMPLEMENTAZIONE DELL INTERFACCIA ADAGIOADLISTENER Implementando l interfaccia AdAgioADListener è possibile ottenere informazioni sull esito del caricamento del banner e sugli eventuali click in esso. 12 / 13

13 ESEMPIO IMPLEMENTAZIONE ADAGIOADLISTENER import com.neodata.adagiosdk.adagioadlistener; import android.util.log; public class MyAdListener implements AdAgioADListener { public void onadfailure() { Chiamato metodo onadfailure"); public void onadreceived() { Chiamato metodo onadreceived"); public void onclick() { Chiamato metodo onclick"); 13 / 13

[AD.AGIO] IOS SDK 2014.07. Pag. 1

[AD.AGIO] IOS SDK 2014.07. Pag. 1 [AD.AGIO] IOS SDK 2014.07 Pag. 1 PREMESSA Il presente documento riporta informazioni riservate il cui utilizzo è confidenziale e permesso esclusivamente nell'ambito del rapporto di fornitura in atto. 1.

Dettagli

WINDOWS PHONE SDK V.1.0

WINDOWS PHONE SDK V.1.0 [AD.AGIO] WINDOWS PHONE SDK V.1.0 OTTOBRE 2013 Pag. 1 1. PREMESSA Il presente documento riporta informazioni riservate il cui utilizzo è confidenziale e permesso esclusivamente nell'ambito del rapporto

Dettagli

La geolocalizzazione

La geolocalizzazione La geolocalizzazione La maggior parte dei dispositivi mobili di ultima generazione è dotata di un antenna GPS che permette di conoscere, in breve tempo e con la precisione di qualche metro, la propria

Dettagli

Sviluppo di un applicazione mobile per la gestione degli interventi tecnici tramite geolocalizzazione

Sviluppo di un applicazione mobile per la gestione degli interventi tecnici tramite geolocalizzazione UNIVERSITA DEGLI STUDI DI FERRARA Corso di Laurea in informatica Anno Accademico 2011-2012 Sviluppo di un applicazione mobile per la gestione degli interventi tecnici tramite geolocalizzazione Relatore:

Dettagli

Android world. Sviluppare app per Android. Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...)

Android world. Sviluppare app per Android. Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...) Android world Un insieme di software per dispositivi mobili (smartphone, tablet, portatili...) Contiene un Sistema Operativo, software middleware e applicazioni varie Sviluppato da Open Handset Alliance,

Dettagli

Integrazione InfiniteCRM - MailUp

Integrazione InfiniteCRM - MailUp Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando

Dettagli

BREVE GUIDA ALL ATTIVAZIONE DEL SERVIZIO DDNS PER DVR SERIE TMX

BREVE GUIDA ALL ATTIVAZIONE DEL SERVIZIO DDNS PER DVR SERIE TMX BREVE GUIDA ALL ATTIVAZIONE DEL SERVIZIO DDNS PER DVR SERIE TMX Questa guida riporta i passi da seguire per la connessione dei DVR serie TMX ad Internet con indirizzo IP dinamico, sfruttando il servizio

Dettagli

Ubiquity getting started

Ubiquity getting started Introduzione Il documento descrive I passi fondamentali per il setup completo di una installazione Ubiquity Installazione dei componenti Creazione del dominio Associazione dei dispositivi al dominio Versione

Dettagli

MagiCum S.r.l. Progetto Inno-School

MagiCum S.r.l. Progetto Inno-School MagiCum S.r.l. Progetto Inno-School Area Sviluppo Software Autore: Sergio Gandola Revisione: 2 Data: 07/06/13 Titolo: Documentazione Tecnica Diario File:Documentazione Tecnica.pdf Sito: http://inno-school.netsons.org/

Dettagli

Nuvola It Data Space

Nuvola It Data Space MANUALE UTENTE INDICE 1. Descrizione servizio... 3 1.1. Informazioni sul servizio di Telecom Italia... 3 1.2. Ruoli e Autenticazione per il servizio di Telecom Italia... 3 1.3. Strumenti... 5 1.4. Documentazione...

Dettagli

Manuale Utente MyFastPage

Manuale Utente MyFastPage Manuale MyFastPage Utente Elenco dei contenuti 1. Cosa è MyVoice Home?... 4 1.1. Introduzione... 5 2. Utilizzo del servizio... 6 2.1. Accesso... 6 2.2. Disconnessione... 7 2.3. Configurazione base Profilo

Dettagli

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY

MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY MOBILE WEB DESIGN TUTORIAL ANDROID METAIO AUGMENTED REALITY 1 Sommario 1. INTRODUZIONE... 3 2. GET METAIO... 4 2.1. PREREQUISITI... 4 2.2. INTALLAZIONE... 4 2.3. PROGETTI ESEMPLIFICATIVI... 4 3. USARE

Dettagli

Programmazione Android. Luca Morettoni http://www.morettoni.net

Programmazione Android. Luca Morettoni <luca@morettoni.net> http://www.morettoni.net Programmazione Android Luca Morettoni http://www.morettoni.net Android Programming Cos'è Android; Concetti di base sulla programmazione: Q&A AndroidManifest; Activities; Services;

Dettagli

START Easy GO! Il gestionale sempre in tasca! Procedura di aggiornamento. Documentazione utente Pagina 1 di 18

START Easy GO! Il gestionale sempre in tasca! Procedura di aggiornamento. Documentazione utente Pagina 1 di 18 Procedura di aggiornamento Il gestionale sempre in tasca! Documentazione utente Pagina 1 di 18 Sommario Avvertenze... 3 Operazioni preliminari... 3 Salvataggi... 3 Download aggiornamenti... 5 Aggiornamento

Dettagli

Realizzazione di una semplice applicazione HelloWorld con una introduzione delle API di base del SDK Android.

Realizzazione di una semplice applicazione HelloWorld con una introduzione delle API di base del SDK Android. HelloWorld App Realizzazione di una semplice applicazione HelloWorld con una introduzione delle API di base del SDK Android. Introduzione Programmiamo una applicazione di base Android, prendendo confidenza

Dettagli

AscoCollabora Manuale Utente. Release 1.3

AscoCollabora Manuale Utente. Release 1.3 AscoCollabora Manuale Utente Release 1.3 martedì 15 aprile 2014 Sommario Presentazione... 3 Interfaccia Web... 4 Accesso ai propri file... 5 Windows... 5 Via CloudTools... 5 Mobile... 6 Versioning dei

Dettagli

Guida per l aggiornamento del software del dispositivo USB

Guida per l aggiornamento del software del dispositivo USB Guida per l aggiornamento del software del dispositivo USB 30/04/2013 Guida per l aggiornamento del software del dispositivo USB Pagina 1 Sommario - Limitazioni di responsabilità e uso del manuale... 3

Dettagli

Esercizi lezione 7. Esercizio A Progettate un'applicazione Android che consenta di fare una telefonata. Pag. 1/9

Esercizi lezione 7. Esercizio A Progettate un'applicazione Android che consenta di fare una telefonata. Pag. 1/9 Pag. 1/9 Esercizi lezione 7 Esercizio A Progettate un'applicazione Android che consenta di fare una telefonata. Suggerimenti: si può usare un intent e il metodo startactivity(), seguendo il frammento di

Dettagli

Tale attività non è descritta in questa dispensa

Tale attività non è descritta in questa dispensa Fondamenti di informatica Oggetti e Java ottobre 2014 1 Nota preliminare L installazione e l uso di Eclipse richiede di aver preliminarmente installato Java SE SDK Tale attività non è descritta in questa

Dettagli

VntRAS Communication Suite

VntRAS Communication Suite VntRAS Communication Suite Manuale di Riferimento 1 Indice pag. 1. Introduzione 3 2. Interfaccia web di amministrazione 4 3. Programmazione 5 4. Programmazione pagine HTML pubbliche 8 2 Introduzione Il

Dettagli

Android. Anatomia di una applicazione

Android. Anatomia di una applicazione Android Anatomia di una applicazione Elementi di base Gli elementi di base per costruire una applicazione Android sono cinque: Activity Intent Broadcast Receiver Service Content Provider 2 Activity (1/3)

Dettagli

Sistemi Mobili e Wireless Android Primi passi

Sistemi Mobili e Wireless Android Primi passi Sistemi Mobili e Wireless Android Primi passi Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Ambiente di sviluppo L'ambiente

Dettagli

Programmazione Android A cura di Carlo Pelliccia. Lezione 7 Menù

Programmazione Android A cura di Carlo Pelliccia. Lezione 7 Menù A cura di Carlo Pelliccia I menù sono una parte importante di qualsiasi applicazione moderna. Da anni gli utenti sono abituati ad avere a che fare con questi strumenti, ai quali si rivolgono ogni volta

Dettagli

Standard Nazionale di Comunicazione Mercato Gas

Standard Nazionale di Comunicazione Mercato Gas JULIA RETE s.u.r.l. - Società unipersonale a responsabilità limitata Soggetta a direzione e coordinamento del Comune di Giulianova Sede legale: 64021 Giulianova (TE) Corso Garibaldi, 119 Sede operativa:

Dettagli

Standard Nazionale di Comunicazione Mercato Gas

Standard Nazionale di Comunicazione Mercato Gas JULIA RETE s.u.r.l. - Società unipersonale a responsabilità limitata Soggetta a direzione e coordinamento del Comune di Giulianova Sede legale: 64021 Giulianova (TE) Corso Garibaldi, 119 Sede operativa:

Dettagli

Lettore di badge Nexus

Lettore di badge Nexus Lettore di badge Nexus Lettore di tessere magnetiche Nexus Benvenuti nella guida del lettore di tessere magnetiche per PC Nexus. Nexus BadgeReader - 2001-2004 Nexus Technologies s.r.l. Firenze Italia pag.

Dettagli

JAVASCRIPT. Tale file è associato alla pagina web mediante il tag