Show Menu
TOPICS×

Tracciare la riproduzione di base su Android

Questa documentazione descrive il tracciamento nella versione 2.x dell’SDK. Se stai implementando una versione 1.x dell’SDK, puoi scaricare la guida per sviluppatori 1.x per Android qui: Download di SDK
  1. Configurazione iniziale tracciamento
    Identificare quando l'utente attiva l'intenzione di riproduzione (l'utente fa clic su play e/o la riproduzione automatica è attivata) e creare un'
    MediaObject
    istanza.
    Nome della variabile
    Descrizione
    Obbligatorio
    name
    Nome file multimediale
    mediaId
    Identificatore univoco del supporto
    length
    Lunghezza del supporto
    streamType
    Tipo di flusso (vedere le costanti __ StreamType riportate di seguito)
    mediaType
    Tipo di supporto (vedere le costanti __ MediaType riportate di seguito)
    StreamType
    costanti:
    Nome costante
    Descrizione
    VOD
    Tipo di flusso per Video on Demand.
    LIVE
    Tipo di flusso per il contenuto live.
    LINEAR
    Tipo di flusso per il contenuto lineare.
    AOD
    Tipo di flusso per Audio On Demand
    AUDIOBOOK
    Tipo di flusso per la Rubrica audio
    PODCAST
    Tipo di flusso per Podcast
    MediaType
    costanti:
    Nome costante
    Descrizione
    Audio
    Tipo di supporto per i flussi audio.
    Video
    Tipo di supporto per i flussi video.
    MediaHeartbeat.createMediaObject(<MEDIA_NAME>, <MEDIA_ID>, <MEDIA_LENGTH>, <STREAM_TYPE>, <MEDIA_TYPE>);
  2. Allega metadati
    È possibile allegare oggetti metadati standard e/o personalizzati alla sessione di tracciamento tramite variabili di dati di contesto.
    • Metadati standard
      Il collegamento dell'oggetto metadati standard all'oggetto multimediale è facoltativo.
      • Riferimento API per le chiavi di metadati multimediali - chiavi di metadati standard - Android
      • Consultate il set completo di metadati video disponibili qui: Parametri audio e video
    • Metadati personalizzati
      Create un dizionario per le variabili personalizzate e inserite i dati per questo supporto. Ad esempio:
      HashMap<String, String> mediaMetadata = new HashMap<String, String>(); mediaMetadata.put("isUserLoggedIn", "false"); mediaMetadata.put("tvStation", "Sample TV Station"); mediaMetadata.put("programmer", "Sample programmer");
  3. Tenere traccia dell’intenzione di avviare la riproduzione
    Per avviare il tracciamento di una sessione multimediale, invocate
    trackSessionStart
    l’istanza Media Heartbeat. Ad esempio:
    public void onVideoLoad(Observable observable, Object data) { _heartbeat.trackSessionStart(mediaInfo, mediaMetadata); }
    Il secondo valore è il nome dell'oggetto metadati multimediale personalizzato creato al punto 2.
    trackSessionStart
    tiene traccia delle intenzioni dell’utente in merito alla riproduzione, non dell’inizio della riproduzione. Questa API viene utilizzata per caricare i dati/metadati multimediali e per stimare la metrica QoS time-to-start (la durata tra
    trackSessionStart
    e
    trackPlay
    ).
    Se non utilizzate metadati multimediali personalizzati, inviate semplicemente un oggetto vuoto per il secondo argomento in
    trackSessionStart
    .
  4. Tracciare l’inizio effettivo della riproduzione
    Mediante questo componente, potete identificare l’evento dal lettore multimediale per l’inizio della riproduzione, in cui viene riprodotto il primo fotogramma del file multimediale sullo schermo, e chiamare
    trackPlay
    :
    // Video is rendered on the screen) and call trackPlay. public void onVideoPlay(Observable observable, Object data) { _heartbeat.trackPlay(); }
  5. Tenere traccia del completamento della riproduzione
    Identificate l’evento dal lettore multimediale per il completamento della riproduzione, in cui l’utente ha guardato il contenuto fino alla fine, e chiamate
    trackComplete
    :
    public void onVideoComplete(Observable observable, Object data) { _heartbeat.trackComplete(); }
  6. Tenere traccia della fine della sessione
    Identificare l’evento dal lettore multimediale per lo scaricamento/la chiusura della riproduzione multimediale, in cui l’utente chiude il supporto e/o il supporto è stato completato e scaricato, e chiamare
    trackSessionEnd
    :
    // Closes the media and/or the media completed and unloaded, // and call trackSessionEnd(). public void onMainVideoUnload(Observable observable, Object data) { _heartbeat.trackSessionEnd(); }
    trackSessionEnd
    segna la fine di una sessione di tracciamento dei supporti. Se la sessione è stata guardata con successo e l’utente ha guardato il contenuto fino alla fine, accertatevi che
    trackComplete
    venga chiamato prima
    trackSessionEnd
    . Qualsiasi altra chiamata
    track*
    API viene ignorata dopo
    trackSessionEnd
    , fatta eccezione per
    trackSessionStart
    una nuova sessione di tracciamento dei supporti.
  7. Tenere traccia di tutti gli scenari di pausa possibili
    Identificare l’evento dal lettore multimediale per la pausa e la chiamata del supporto
    trackPause
    :
    public void onVideoPause(Observable observable, Object data) { _heartbeat.trackPause(); }
    Pausa scenari
    Identificate eventuali situazioni in cui il lettore video si interrompe e accertatevi che venga chiamato
    trackPause
    correttamente. Tutti gli scenari seguenti richiedono che la chiamata dell'app
    trackPause()
    :
    • L'utente interrompe esplicitamente la pausa nell'app.
    • Il lettore si mette nello stato Pausa.
    • (App
      mobili
      ) - L'utente mette l'applicazione in background, ma si desidera che l'app tenga aperta la sessione.
    • (App
      mobili
      ) - Si verifica qualsiasi tipo di interruzione del sistema che causa il background di un'applicazione. Ad esempio, l'utente riceve una chiamata, o si verifica un pop-up da un'altra applicazione, ma si desidera che l'applicazione mantenga in vita la sessione per dare all'utente la possibilità di riprendere il supporto dal punto di interruzione.
  8. Identificare l’evento dal lettore per la riproduzione di contenuti multimediali e/o la ripresa di contenuti multimediali dalla pausa e dalla chiamata
    trackPlay
    .
    // trackPlay() public void onVideoPlay(Observable observable, Object data) { _heartbeat.trackPlay(); }
    Può trattarsi della stessa origine evento utilizzata nel passaggio 4. Quando la riproduzione dei contenuti multimediali riprende, accertatevi che ogni chiamata
    trackPause()
    API sia associata alla seguente chiamata
    trackPlay()
    API.
Per ulteriori informazioni sul tracciamento della riproduzione di base, consultate:
  • Scenari di tracciamento: Riproduzione VOD senza annunci
  • Lettore di esempio incluso con Android SDK per un esempio di tracciamento completo.