權益管理員概觀

「權益管理員」是支援Primetime驗證實作的功能管理員。

功能概觀

與Android Primetime SDK參考實作整合的Primetime驗證為應用程式新增了功能管理員。 不過,與許多其他功能管理員不同,EntitlementManager會用於應用程式中的數個位置。​以下概述對「參考實作」所做的變更和新增,以支援Primetime驗證:

EntitlementManager類別

EntitlementManager類別可處理與Primetime驗證SDK的所有通訊,並封裝權益工作流程所需的應用程式邏輯。 應用程式會使用EntitlementManager的公用API來啟動權益工作流程,而EntitlementMangerListener介面則提供回呼機制,讓應用程式處理EntitlementManger事件。

EntitlementManager回呼

參考實作的主要活動CatalogActivity會建立EntitlementManagerListener的例項,並將它註冊到EntitlementManager。 這樣,EntitlementManager可能會向應用程式的其餘部分發出所需的UI更新信號。 回呼包括顯示/隱藏載入對話框、顯示狀態對話框、更新授權和驗證圖示,以及在成功授權時啟動視訊播放。

權益對話框

EntitlementDialogFragment類別會根據傳遞至類別建構函式的權益狀態產生對話訊息。 此類用於驗證成功消息和所有錯誤消息。 當CatalogActivityEntitlementManager收到特定事件時,會顯示權益對話方塊。 此外,CatalogActivity實作EntitlementDialogListener介面,其中包含回呼方法,以在對話方塊關閉或使用者從Primetime驗證服務登出時發出訊號。

內容提供者選擇與登入

在使用Primetime驗證進行驗證期間,有兩個新活動MvpdPickerActivityMvpdLoginActivity可讓使用者選擇其內容提供者並登入。 這兩個活動都是從CatalogActivity經由EntitlementManager開始的。 此外,MvpdPickerActivityMvpdLoginActivity都會將結果返回至CatalogActivity,因此CatalogActivity必須覆寫Activity.onActivityResult方法。

登入按鈕

「參考實作」的主要活動CatalogActivity在其動作列中包含新的「登入」按鈕。 「登入」按鈕可讓使用者使用Primetime驗證來啟動驗證。 此外,用戶可以通過選擇受保護的視頻來發起驗證。 「登入」按鈕的圖示和文字會隨使用者的驗證狀態而改變,而CatalogActivity包含代碼,可在頁面重新整理時更新按鈕的圖示和文字。 為此,當CatalogActivity啟動時,會呼叫EntitlementManager.checkAuthentication()以更新使用者的驗證狀態。

內容權益

CatalogView中,新圖示會顯示在內容圖示的上方,以顯示該內容的使用者授權狀態。 例如,如果使用者已預先取得檢視視訊的授權,則內容上會顯示綠色圓圈圖示。 不過,如果使用者未預先取得檢視視訊的授權,則會顯示按鍵圖示。 這些圖示的顯示在ContentTileAdapter中處理,但是當呼叫EntitlementManagerListener中的回呼時,會從CatalogActivity開始更新其狀態。

內容播放

現在,視訊播放需要EntitlementManager的授權檢查。 對EntitlementManager.getAuthorization()的調用發生在CatalogView內。 如果視訊需要授權且使用者已授權,則PlayerActivity會從CatalogActivity啟動。

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now