概要
Brightcoveのネイティブ SDK では、オープン測定 SDK(OM SDK )の使用がサポートされるようになりました。Google IMAと統合された OM SDK では、サードパーティのツールを使用して広告の測定と検証を行うことができます。
Open Measurement SDKでは、広告メディア要素をオーバーレイするすべてのビューを障害物とみなし、広告の視認性を低下させます。動画コントロールは「フレンドリーな」障害と見なされる場合がありますが、広告の視認性の測定から除外するには、OM SDK に登録する必要があります。
iOS
iOS 版 Brightcove ネイティブ SDK では、OM SDK の使用がサポートされています。サードパーティ広告測定の実装の詳細については、『 IMA SDK for iOS』ドキュメントの「測定を開く」を参照してください。
UI オーバーレイ
IMA 広告ビューをオーバーレイする UI コントロール要素を使用している場合は、OM SDK に登録する必要があります。詳細については、iOS 版ネイティブ SDK リファレンスの「広告オーバーレイの登録」セクションを参照してください。
IMA設定
デフォルトでは、iOS 用 Brightcove ネイティブ SDK はplayerType
、playerVersion
およびプロパティを次の値に設定します。
imaSettings.playerType = @"bcov/ios-sdk-player";
imaSettings.playerVersion = [BCOVIMAComponent versionIdentifier];
これらの値を上書きすることもできます。一例は、Google IMAから直接広告指標を報告することです。独自の値を使用するには、imaSettings
オブジェクトに次のように設定します。
imaSettings.playerType = @"your-player-type";
imaSettings.playerVersion = @"your-player-version"
iOS 版ネイティブ SDK での IMA 広告の使用に関するコードの詳細については、 BasicimaPlayer サンプルを参照してください。
Android
Android 版 Brightcove ネイティブ SDK では、OM SDK の使用がサポートされています。サードパーティ広告測定の実装の詳細については、『 IMA SDK for Android』ドキュメントの「オープン測定」を参照してください。
UI オーバーレイ
IMA 広告ビューをオーバーレイする UI コントロール要素を使用している場合は、OM SDK に登録する必要があります。これを行うには、コードは次のようになります。
public class MainActivity extends BrightcovePlayer {
// ...
private AdDisplayContainer adDisplayContainer;
private View adOverlayView;
// ...
@Override
protected void onCreate(Bundle savedInstanceState) {
// ...
adOverlayView = findViewById(R.id.ad_overlay);
setupGoogleIMA();
// ...
}
private void setupGoogleIMA() {
// Show adOverlayView
eventEmitter.on(EventType.AD_BREAK_STARTED, (event) -> {
adOverlayView.setVisibility(View.VISIBLE);
});
// Hide adOverlayView
eventEmitter.on(EventType.AD_BREAK_COMPLETED, (event) -> {
adOverlayView.setVisibility(View.GONE);
});
// Create ImaSdkFactory
final ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
eventEmitter.on(GoogleIMAEventType.ADS_REQUEST_FOR_VIDEO, new EventListener() {
@Override
public void processEvent(Event event) {
// Create a container object to register the friendly obstructions.
adDisplayContainer = sdkFactory.createAdDisplayContainer();
adDisplayContainer.registerVideoControlsOverlay(adOverlayView);
// ...
}
});
eventEmitter.on(EventType.COMPLETED, (event) -> {
if (adDisplayContainer != null) {
// Unregister the friendly obstructions
adDisplayContainer.unregisterAllVideoControlsOverlays();
}
});
}
}
IMA設定
デフォルトでは、iOS 用 Brightcove ネイティブ SDK はplayerType
、playerVersion
およびプロパティを次の値に設定します。
imaSdkSettings.setPlayerType("bcov/and-sdk-player");
imaSdkSettings.setPlayerVersion("<replaced with current sdk version>");
これらの値を上書きすることもできます。一例は、Google IMAから直接広告指標を報告することです。独自の値を使用するには、imaSdkSettings
オブジェクトに次のように設定します。
ImaSdkSettings imaSdkSettings = imaSdkFactory.createImaSdkSettings();
imaSdkSettings.setPlayerType("your-player-type");
imaSdkSettings.setPlayerVersion("your-player-version");
GoogleIMAComponent googleIMAComponent = new GoogleIMAComponent(brightcoveVideoView, eventEmitter, imaSdkSettings);
Android 用ネイティブ SDK での IMA 広告の使用に関するコードの詳細については、 AdRuleSimasampleApp サンプルを参照してください。