Objective-C
Swift

Installazione via Cocoapods

Requisiti minimi

BDGhostover SDK richiede iOS 9.0 o successivi.

Installazione di Cocoapods

CocoaPods è un gestore delle dipendenze per Objective-C e Swift, che automatizza e semplifica il processo di utilizzo delle librerie di terze parti come BDGhostover nei progetti.

Per installare Cocoapods è sufficiente eseguire il comando da Terminale

$ gem install cocoapods

Configurazione del Podfile

Per integrare BDGhostover nel tuo progetto Xcode usando Cocoapods, aggiungi la seguente riga nel podfile

pod BDGhostover

ed esegui il comando per l'installazione

$ pod install

Al termine della procedura d'installazione, l'app sarà pronta per implementare i metodi dell'SDK ed iniziare a ricevere ads Ghostover da mostrare agli utenti.

BDGhostover

getInstance

Ottiene l'istanza condivisa dell'oggetto BDGhostover necessaria all'invocazione dei metodi pubblici.

+ (BDGhostover*) getInstance;

class func getInstance() -> BDGhostover!

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostover.h

setDelegate

Imposta il controller per ricevere gli eventi attraverso le callback di BDGhostoverListener.

- (void) setDelegate(id⟨BDGhostoverDelegate⟩);

weak var delegate: BDGhostoverDelegate!

Discussione

L'invocazione di questo metodo equivale al set della property delegate dell'istanza di BDGhostover.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostover.h

enableTestingMode

Attiva la modalità di testing durante l'intera esecuzione dell'applicazione.

- (void) enableTestingMode;

func enableTestingMode();

Discussione

Quando la modalità di testing è attiva, ogni invocazione a requestAdWithTags permetterà di ottenere in risposta un ad valido e pronto per la riproduzione.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostover.h

requestAdWithTags

Richiede un ad specificando un array di tag.

- (void) requestAdWithTags:(NSArray*)tags;

func requestAd(withTags tags: [String]!)

Discussione

L'array tags deve essere una lista di VAST tag url validi.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostover.h

playAd

Avvia la riproduzione di un ad ottenuto tramite chiamata a requestAdWithTags

- (BOOL) playAd;

func playAd() -> Bool

Discussione

Questo metodo viene invocato nel momento in cui si decide di avviare la riproduzione di un ad precedentemente ottenuto invocando il metodo requestAdWithTags ed a seguito della verifica di presenza e disponibilità di un ad notificata della callback ghostoverReadyToPlay

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostover.h

sdkVersion

Ottiene la versione dell'SDK in uso.

- (NSString*) sdkVersion;

func sdkVersion() -> String!

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostover.h

BDGhostoverDelegate

ghostoverReadyToPlay

Notifica che un ad è disponibile e pronto per la riproduzione.

- (void) ghostoverReadyToPlay;

func ghostoverReadyToPlay();

Discussione

Questa callback segnala la disponibilità di un ad ricevuto dall'applicazione a seguito dell'invio di una richiesta tramite l'invocazione del metodo requestAdWithTags.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverDidFailToReceiveAdWithError

Segnala l'assenza di un ad richiesto tramite l'invocazione del metodo requestAdWithTags.

- (void) ghostoverDidFailToReceiveAdWithError:(NSError*)error;

func ghostoverDidFailToReceiveAdWithError(_ error: Error!);

Discussione

I motivi legati al fallimento di una richiesta di ad possono essere molteplici tra cui, ma non limitatamente a questi, la non effettiva disponibilità di un ad, errori di rete per assenza di connessione, tag url non valido.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverDidStartPlaybackAdWithDuration

Segnala che la riproduzione di un ad è stata avviata e restituisce la durata totale dell'ad in secondi.

- (void) ghostoverDidStartPlaybackAdWithDuration:(NSTimeInterval)duration;

func ghostoverDidStartPlaybackAd(withDuration duration: TimeInterval);

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverDidUpdateAdPlaybackTime:adDuration

Segnala che la riproduzione di un ad ha raggiunto un determinato avanzamento.

- (void) ghostoverDidUpdateAdPlaybackTime:(NSTimeInterval)playbackTime adDuration:(NSTimeInterval)duration;

func ghostoverDidUpdateAdPlaybackTime(_ playbackTime: TimeInterval, adDuration duration: TimeInterval);

Discussione

Questa notifica viene innescata ad renderizzazione a schermo di ciascuna frame dell'ad.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverDidReachCompletionAtPlaybackTime

Segnala che la riproduzione di un ad ha raggiunto il completamento.

- (void) ghostoverDidReachCompletionAtPlaybackTime:(NSTimeInterval)playbackTime;

func ghostoverDidReachCompletion(atPlaybackTime playbackTime: TimeInterval);

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverDidBreakAtPlaybackTime

Segnala che la riproduzione di un ad è stata interrotta.

- (void) ghostoverDidBreakAtPlaybackTime:(NSTimeInterval)playbackTime;

func ghostoverDidBreak(atPlaybackTime playbackTime: TimeInterval);

Discussione

L'interruzione di un ad è innescata dall'entrata in background dell'applicazione durante la riproduzione.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverPauseOnUnsupportedOrientationTimedoutWithTimeout

Segnala che la riproduzione di un ad è stata interrotta dopo un periodo di pausa.

- (void) ghostoverPauseOnUnsupportedOrientationTimedoutWithTimeout:(NSTimeInterval)timeout;

func ghostoverPauseOnUnsupportedOrientationTimedout(withTimeout timeout: TimeInterval);

Discussione

Questo tipo di interruzione viene innescata allo scadere di un timeout avviato a seguito della rotazione del disposito in uno degli orientamenti (portrait, landscape) eventualmente non supportati dall'ad.

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverDidChangeMuteState

Notifica il cambiamento di stato dell'audio riprodotto dall'ad.

- (void) ghostoverDidChangeMuteState:(BOOL)isMuted;

func ghostoverDidChangeMuteState(_ isMuted: Bool);

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverWillPresentLandingScreen

Informa che l'ad è stato tappato e sta per essere mostrato il sito d'atterraggio.

- (void) ghostoverWillPresentLandingScreen;

func ghostoverWillPresentLandingScreen();

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

ghostoverWillDismissLandingScreen

Informa che il sito d'atterraggio sta per essere chiuso e si sta ritornando all'applicazione.

- (void) ghostoverWillDismissLandingScreen;

func ghostoverWillDismissLandingScreen();

Disponibilità

SDK ver 8.0 e successive

Dichiarato in

BDGhostoverDelegate.h

Installazione via Gradle

Requisiti minimi

BDGhostover SDK richiede Android 4.1 (API 16) o successivi

Configurazione di build.gradle

All'interno del file build.gradle di progetto dell'applicazione, inserire la seguente dipendenza di repository

jcenter()
maven {
    url "https://repo.ghostover.com/android"
}

All'interno delle dipendenze del modulo dell'app, inserire

implementation 'com.ghostover:library:8.+'

In ultimo, nel metodo onCreate dell'Activity principale, inizializzare l'SDK invocando il metodo initialize

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    BDGhostover.initialize(this);
}

L'app è pronta per implementare i metodi dell'SDK ed iniziare a ricevere ads Ghostover da mostrare agli utenti.

BDGhostover

initialize

Ottiene l'istanza condivisa dell'oggetto BDGhostover necessaria all'invocazione dei metodi pubblici.

public static void initialize(Activity context);

Disponibilità

SDK ver 8.0 e successive

getInstance

Ottiene l'istanza condivisa dell'oggetto BDGhostover necessaria all'invocazione dei metodi pubblici.

public static BDGhostover getInstance();

Disponibilità

SDK ver 8.0 e successive

setListener

Imposta il listener per ricevere gli eventi attraverso le callback di BDGhostoverListener.

public void setListener(BDGhostoverListener listener);

Disponibilità

SDK ver 8.0 e successive

enableTestingMode

Attiva la modalità di testing durante l'intera esecuzione dell'applicazione.

public void enableTestingMode();

Discussione

Quando la modalità di testing è attiva, ogni invocazione a requestAd permetterà di ottenere in risposta un ad valido e pronto per la riproduzione.

Disponibilità

SDK ver 8.0 e successive

requestAd

Richiede un ad specificando uno o più tag.

public void requestAd(String... tagUrls);

Discussione

I tags devono essere una lista di VAST tag url validi.

Disponibilità

SDK ver 8.0 e successive

playAd

Avvia la riproduzione di un ad ottenuto tramite chiamata a requestAd

public boolean playAd();

Discussione

Questo metodo viene invocato nel momento in cui si decide di avviare la riproduzione di un ad precedentemente ottenuto invocando il metodo requestAd ed a seguito della verifica di presenza e disponibilità di un ad notificata della callback ghostoverReadyToPlay

Disponibilità

SDK ver 8.0 e successive

getSdkVersion

Ottiene la versione dell'SDK in uso.

public static String getSdkVersion();

Disponibilità

SDK ver 8.0 e successive

BDGhostoverListener

ghostOverReadyToPlay

Notifica che un ad è disponibile e pronto per la riproduzione.

public void ghostOverReadyToPlay(BDGhostover ghostOver);

Discussione

Questa callback segnala la disponibilità di un ad ricevuto dall'applicazione a seguito dell'invio di una richiesta tramite l'invocazione del metodo requestAd.

Disponibilità

SDK ver 8.0 e successive

ghostOverDidFailToReceiveAd

Segnala l'assenza di un ad richiesto tramite l'invocazione del metodo requestAd.

public void ghostOverDidFailToReceiveAd(BDGhostover ghostOver, BDGhostoverError error);

Discussione

I motivi legati al fallimento di una richiesta di ad possono essere molteplici tra cui, ma non limitatamente a questi, la non effettiva disponibilità di un ad, errori di rete per assenza di connessione, tag url non valido.

Disponibilità

SDK ver 8.0 e successive

ghostOverDidStartPlayback

Segnala che la riproduzione di un ad è stata avviata e restituisce la durata totale dell'ad in secondi.

public void ghostOverDidStartPlayback(BDGhostover ghostOver, long duration);

Disponibilità

SDK ver 8.0 e successive

ghostOverDidUpdatePlaybackTime

Segnala che la riproduzione di un ad ha raggiunto un determinato avanzamento.

public void ghostOverDidUpdatePlaybackTime(BDGhostover ghostOver, long playbackTime, long duration);

Discussione

Questa notifica viene innescata ad renderizzazione a schermo di ciascuna frame dell'ad.

Disponibilità

SDK ver 8.0 e successive

ghostOverDidReachCompletion

Segnala che la riproduzione di un ad ha raggiunto il completamento.

public void ghostOverDidReachCompletion(BDGhostover ghostOver, long playbackTime);

Disponibilità

SDK ver 8.0 e successive

ghostOverDidBreak

Segnala che la riproduzione di un ad è stata interrotta.

public void ghostOverDidBreak(BDGhostover ghostOver, long playbackTime)

Discussione

L'interruzione di un ad è innescata dall'entrata in background dell'applicazione durante la riproduzione.

Disponibilità

SDK ver 8.0 e successive

ghostOverPauseOnUnsopportedOrientationTimedOut

Segnala che la riproduzione di un ad è stata interrotta dopo un periodo di pausa.

public void ghostOverPauseOnUnsopportedOrientationTimedOut(BDGhostover ghostOver, long timeout);

Discussione

Questo tipo di interruzione viene innescata allo scadere di un timeout avviato a seguito della rotazione del disposito in uno degli orientamenti (portrait, landscape) eventualmente non supportati dall'ad.

Disponibilità

SDK ver 8.0 e successive

ghostOverDidChangeMuteState

Notifica il cambiamento di stato dell'audio riprodotto dall'ad.

public void ghostOverDidChangeMuteState(BDGhostover ghostOver, boolean isMuted);

Disponibilità

SDK ver 8.0 e successive

ghostOverWillPresentLandingScreen

Informa che l'ad è stato tappato e sta per essere mostrato il sito d'atterraggio.

public void ghostOverWillPresentLandingScreen(BDGhostover ghostOver);

Disponibilità

SDK ver 8.0 e successive