Android でのチャプターおよびセグメントの追跡

重要

以下の手順は、SDK 2.x を使用した実装についてのガイダンスです。1.x バージョンの SDK を実装する場合は、開発ガイドをこちら(SDK のダウンロード)からダウンロードできます。

チャプター追跡の実装

  1. いつチャプター開始イベントが発生するかを識別し、チャプター情報を使用して ChapterObject インスタンスを作成します。

    ChapterObject チャプター追跡リファレンス:

    メモ

    これらの変数は、チャプターを追跡する場合にのみ必要です。

    変数名 説明 必須
    name チャプター名
    position チャプター位置
    length チャプターの長さ
    startTime チャプター開始時間

    チャプターオブジェクト:

    MediaObject chapterDataInfo =  
      MediaHeartbeat.createChapterObject(<CHAPTER_NAME>,  
                                         <POSITION>,  
                                         <LENGTH>,  
                                         <START_TIME>);
    
  2. チャプターのカスタムメタデータを含める場合、そのメタデータのコンテキストデータ変数を作成します。

    HashMap<String, String> chapterMetadata =  
      new HashMap<String,String>(); 
    chapterMetadata.put("segmentType", "Sample Segment Type"); 
    chapterMetadata.put("segmentName", "Sample Segment Name"); 
    chapterMetadata.put("segmentInfo", "Sample Segment Info");
    
  3. チャプター再生の追跡を開始するには、ChapterStart インスタンスで MediaHeartbeat イベントを呼び出します。

    public void onChapterStart(Observable observable, Object data) {  
        _heartbeat.trackEvent(MediaHeartbeat.Event.ChapterStart,  
                              chapterDataInfo,  
                              chapterMetadata); 
    }
    
  4. カスタムコードで定義したチャプター終了の境界まで再生したら、ChapterComplete インスタンスで MediaHeartbeat イベントを呼び出します。

    public void onChapterComplete(Observable observable, Object data) {  
        _heartbeat.trackEvent(MediaHeartbeat.Event.ChapterComplete, null, null); 
    }
    
  5. ユーザーがチャプターをスキップした(例えば、ユーザーがチャプター境界の外にシークした)のでチャプター再生が完了しなかった場合は、MediaHeartbeat インスタンスで ChapterSkip イベントを呼び出します。

    public void onChapterSkip(Observable observable, Object data) {  
        _heartbeat.trackEvent(MediaHeartbeat.Event.ChapterSkip, null, null); 
    }
    
  6. その他のチャプターがある場合、手順 1 ~ 5 を繰り返します。

このページ