iOS のセットアップ

重要

2021 年 8 月 31 日にバージョン 4 のモバイル SDK のサポートが終了するのに伴い、iOS および Android 向けの Media Analytics SDK のサポートも終了します。詳しくは、Media Analytics SDK のサポート終了に関する FAQ を参照してください。

前提条件

  • メディア SDK 用の有効な設定パラメーターを取得 これらのパラメーターは、Analytics アカウントの設定後、アドビの担当者から取得できます。

  • iOS 向け ADBMobile をアプリケーションに実装 Adobe Mobile SDK ドキュメントについて詳しくは、Experience Cloud ソリューション用 iOS SDK 4.x を参照してください。

    重要

    iOS 9 から、Apple は App Transport Security(ATS)という機能を導入しました。この機能は、アプリケーションで業界標準のプロトコルと暗号のみを使用することで、ネットワークセキュリティの向上を目的としています。この機能はデフォルトで有効になっていますが、ATS を利用する際の各種設定オプションが用意されています。ATS について詳しくは、App Transport Security を参照してください。

  • メディアプレーヤーで以下の機能を設定します。

    • プレーヤーイベントをサブスクライブするための API - メディア SDK では、プレーヤーでイベントが発生する際に、シンプルな API のセットを呼び出す必要があります。
    • プレーヤー情報を提供する API - メディア名や再生ヘッドなどの情報がこれに該当します。

SDK の実装

  1. ダウンロードしたメディア SDK をプロジェクトに追加します。

    1. libs ディレクトリに以下のソフトウェアコンポーネントが存在することを確認します。

      • ADBMediaHeartbeat.h:iOS ハートビートトラッキング API で使用される Objective-C ヘッダーファイル。

      • ADBMediaHeartbeatConfig.h:SDK 設定用の Objective-C ヘッダーファイル。

      • MediaSDK.a:iOS デバイス用のライブラリビルド(armv7、armv7s、arm64)とシミュレーター(i386 および x86_64)を含む、ビットコード対応の大きなバイナリ。

        ターゲットが iOS アプリを対象としている場合は、このバイナリがリンクされている必要があります。

      • MediaSDK_TV.a:新しい Apple TV デバイス用のライブラリビルド(arm64)とシミュレーター(x86_64)を含む、ビットコード対応の大きなバイナリ。

        このバイナリは、ターゲットが Apple TV(tvOS)アプリを対象としている場合、リンクされている必要があります。

    2. 以下のようにして、プロジェクトにライブラリを追加します。

      1. Xcode IDE を起動して、アプリを開きます。

      2. Project Navigator で、libs ディレクトリをドラッグして、プロジェクトにドロップします。

      3. Copy Items if Needed」チェックボックスが選択されていること、「Create Groups」が選択されていること、および「Add to Target」にあるチェックボックスが選択されていないことを確認します。

      4. 完了」をクリックします。

      5. Project Navigator で、アプリを選択し、ターゲットを選択します。

      6. 一般」タブの「リンクされたフレームワーク」および「ライブラリ」セクションで、必要なフレームワークとライブラリをリンクさせます。

        iOS アプリのターゲット:

        • AdobeMobileLibrary.a

        • MediaSDK.a

        • libsqlite3.0.tbd
          Apple TV(tvOS)のターゲット:

        • AdobeMobileLibrary_TV.a

        • MediaSDK_TV.a

        • libsqlite3.0.tbd

        • SystemConfiguration.framework

      7. アプリケーションがエラーなくビルドされることを確認します。

  2. ライブラリをインポートします。

    #import "ADBMediaHeartbeat.h"
    #import "ADBMediaHeartbeatConfig.h"
    
  3. ADBMediaHeartbeatConfig インスタンスを作成します。

    ここでは、MediaHeartbeat 設定パラメーターと、正確な追跡のために MediaHeartbeat インスタンスに正しい設定値を設定する方法を説明します。

    ADBMediaHeartbeatConfig 初期化のサンプル:

    // Media Heartbeat Initialization
    ADBMediaHeartbeatConfig *config = [[ADBMediaHeartbeatConfig alloc] init];
    config.trackingServer = <SAMPLE_HEARTBEAT_TRACKING_SERVER>;
    config.channel        = <SAMPLE_HEARTBEAT_CHANNEL>;
    config.appVersion     = <SAMPLE_HEARTBEAT_SDK_VERSION>;
    config.ovp            = <SAMPLE_HEARTBEAT_OVP_NAME>;
    config.playerName     = <SAMPLE_PLAYER_NAME>;
    config.ssl            = <YES/NO>;
    config.debugLogging   = <YES/NO>;
    
  4. ADBMediaHeartbeatDelegate プロトコルを実装します。

    @interface VideoAnalyticsProvider : NSObject <ADBMediaHeartbeatDelegate>
    
    @end
    
    @implementation VideoAnalyticsProvider
    
    // Replace <bitrate>, <startuptime>, <fps> and <droppeFrames>  
    // with the current playback QoS values.
    - (ADBMediaObject *)getQoSObject {
        return [ADBMediaHeartbeat createQoSObjectWithBitrate:<bitrate>  
                                  startupTime:<startuptime>   
                                  fps:<fps>  
                                  droppedFrames:<droppedFrames>];
    }
    
    // Return the current video player playhead position.
    // Replace <currentPlaybackTime> with the video player current playback time
    - (NSTimeInterval)getCurrentPlaybackTime {
        return <currentPlaybackTime>;
    }
    
    @end
    
  5. ADBMediaHeartBeatConfig および ADBMediaHeartBeatDelegate を使用して、ADBMediaHeartbeat インスタンスを作成します。

    //Replace <ADBMediaHeartBeatDelegate> with your delegate instance
    _mediaHeartbeat = [[ADBMediaHeartbeat alloc] initWithDelegate:
      <ADBMediaHeartBeatDelegate> config:config];
    
    重要

    ADBMediaHeartbeat インスタンスがアクセス可能であることと、セッションの終わりまで解放されない​ことを確認します。このインスタンスは、以下のすべてのトラッキングイベントに使用されます。

iOS でのバージョン 1.x から 2.x への移行

バージョン 2.x では、すべてのパブリックメソッドは、開発をより簡単にするために、ADBMediaHeartbeat クラスに統合されています。すべての設定は、ADBMediaHeartbeatConfig クラスに統合されています。

1.x から 2.x への移行について詳しくは、VHL 1.x から 2.x への移行を参照してください。

tvOS のネイティブアプリの設定

新しい Apple TV のリリースに伴い、ネイティブ tvOS 環境で実行するためのアプリケーションを作成できるようになりました。iOS で利用可能ないくつかのフレームワークのいずれかを使用して完全にネイティブなアプリを作成するか、XML テンプレートおよび JavaScript を使用したアプリを作成できます。MediaSDK バージョン 2.0 から、tvOS のサポートが利用できます。tvOS について詳しくは、tvOS Developer サイトを参照してください。

次の手順を Xcode プロジェクトで実行します。このガイドは、プロジェクトのターゲットの 1 つが tvOS 用の Apple TV アプリであることを想定して記述されています。

  1. プロジェクトの lib フォルダーに VideoHeartbeat_TV.a ライブラリファイルをドラッグします。

  2. tvOS アプリのターゲットの「Build Phases(ビルドフェーズ)」タブで、「Link Binary with Libraries(バイナリをライブラリとリンク)」を展開して、以下のライブラリを追加します。

    • MediaSDK_TV.a
    • AdobeMobileLibrary_TV.a
    • libsqlite3.0.tbd
    • SystemConfiguration.framework

このページ