概覽
Cross-Device Resume 允許觀眾在一台設備上開始觀看視頻,稍後在同一台或另一台設備上繼續觀看他們離開的視頻。
假設有人開始在他們的移動設備上觀看視頻。稍後,他們可以繼續使用網絡瀏覽器上的播放器觀看同一視頻。播放將從他們中斷的地方繼續,所以他們不會錯過任何東西。
如果您不熟悉此功能,請參閱概觀:跨設備簡歷文件。
需求
使用 Brightcove 本機 SDK 的跨設備恢復需要滿足以下要求:
布萊特灣原生 SDK 版本
- 適用於Android 6.13.1+的本機SDK
- 適用於iOS 6.0.1+,適用於Pulse 6.7.5+,適用於SSAI 6.7.7+的本機SDK
裝置作業系統版本
- 安卓 6.0 以上
- iOS 11.0 以上
設定
擁有 Brightcove 視訊雲端帳戶的任何人都可以使用此功能。
首先,請執行以下操作
- 聯繫您的客戶經理為您的帳戶啟用跨設備簡歷
- 確定您使用的影片已擷取進行動態傳遞
實現跨設備簡歷
要實施跨設備恢復,請按照下列步驟操作:
-
設置Brightcove分析的用戶標識符
即使瀏覽者資料會自動傳送至 Brightcove 分析,您仍需要設定使用者識別碼。
您可以使用身份驗證網關或某些身份管理解決方案來跟踪查看者。使用此查看器 ID 作為用戶標識符以傳遞給 Brightcove 分析。
-
從跨設備恢復 (XDR) API 獲取查看器播放位置
- 繼續播放
安卓實作
對於適用於Android的Native SDK,請按照以下步驟操作:
-
設定布萊特灣分析的使用者識別碼。
HashMap<String, String> baseParams = new HashMap<>(); baseParams.put(Analytics.Fields.USER, "viewer id"); baseParams.put(Analytics.Fields.APPLICATION_ID, "application id"); HashMap<String, Object> eventParams = new HashMap<>(); eventParams.put(Analytics.Fields.BASE_PARAMS, baseParams); eventEmitter.emit(EventType.ADD_ANALYTICS_BASE_PARAMS, eventParams);
-
從跨設備恢復 (XDR) API 獲取查看器播放位置。
如需詳細資訊,請參閱下列內容:
-
繼續播放。
從 XDR API 獲得查看器播放位置後,您可以從該點恢復播放。使用設置播放頭位置
brightcoveVideoView.seekTo()
方法。final VideoPlaybackController playbackController = brightcoveVideoView.getPlaybackController(); eventEmitter.on(EventType.VIDEO_DURATION_CHANGED, new EventListener() { @Override public void processEvent(final Event event) { playbackController.setAdsDisabled(true); brightcoveVideoView.seekTo(<viewer playhead position>); } }); eventEmitter.on(EventType.DID_SEEK_TO, new EventListener() { @Override public void processEvent(final Event event) { playbackController.setAdsDisabled(false); } });
iOS 實作
對於iOS的Native SDK,請按照以下步驟操作:
-
設定布萊特灣分析的使用者識別碼。
@try { [BCOVGlobalConfiguration.sharedConfig setValue:@{ @"privateUser": self.viewer id, @"privateApplication": @"application id" } forKey:@"privateSessionAnalytics"]; } @catch (NSException *e) { NSLog(@"%@", e.description); }
-
從跨設備恢復 (XDR) API 獲取查看器播放位置。
如需詳細資訊,請參閱下列內容:
-
繼續播放。
從 XDR API 獲得查看器播放位置後,您可以從該點恢復播放。使用以下方法設置播放頭位置:
-[BCOVPlaybackController seekWithoutAds:(CMTime)seekToTime completionHandler:(void (^)(BOOL finished))completion]
這使您可以在特定時間恢復播放,而不必強迫觀看者觀看之前安排的廣告
seekToTime
.在準備
seekWithoutAds:completionHandler:
,禁用autoPlay
設置時BCOVPlaybackController
。蘋果建議您等待手機的狀態
AVPlayerItem
在使用之前將其更改為準備播放AVPlayerItem
。因此,請致電seekWithoutAds:completionHandler:
在裡面kBCOVPlaybackSessionLifecycleEventReady
的處理程序playbackController:playbackSession:didReceiveLifecycleEvent
你的方法BCOVPlaybackControllerDelegate
。有關不帶廣告的搜索的詳細信息,請參閱以下內容: