實作Android Player

本節說明如何設定Android播放器。 它提供設定檔、可用選項和建議的資訊,說明要用於開發和測試的設定。

此外,Watchdog​是從當機中恢復播放器的解決方案。 應用程式需要向監視程式服務註冊,然後定期向其處於活動狀態的服務發送消息。 如果監視程式服務未在規定時間內收到保持活動消息,則服務會嘗試重新啟動設備以進行乾淨的恢復(如果它具有足夠的權限)或重新啟動應用程式。

安裝Android Player

若要實作適用於AEM畫面的Android Player,請安裝適用於AEM畫面的Android Player。

請造訪​AEM 6.5 Player Downloads頁面。

設定AEM Screens 6.5.5 Service Pack的環境

注意

如果您使用AEM Screens 6.5.5 Service Pack,則必須為Android Player設定環境。

在所有AEM作者和發佈例項上,將登入Token Cookie SameSite屬性從​Lax​設為​None,從​Adobe Experience Manager Web Console Configuration​設定。

請遵循下列步驟:

  1. 使用​導覽至「Adobe Experience Manager Web Console設定」。http://localhost:4502/system/console/configMgr

  2. 搜尋​Adobe Granite Token驗證處理常式

  3. 將login-token Cookies的​SameSite屬性從 Lax 設為 None
    影像

  4. 按一下​「儲存」

臨機方法

臨機方法可讓您安裝最新的Android Player(.exe)。 請造訪​AEM 6.5 Player Downloads頁面。

下載應用程式後,請依照播放器上的步驟完成臨機安裝:

  1. 長按左上角以開啟管理面板。

  2. 從左側動作功能表導覽至​Configuration,然後輸入您要連線至的AEM例項位置(位址),然後按一下「儲存​a3/>」。

  3. 從左側操作菜單導航到​設備註冊​連結,以檢查設備註冊過程的狀態。

注意

如果​State​是​REGISTERED,您會注意到​Device id​欄位將會填入。

如果​State​是​UNECROVERED,則可使用​Token​註冊裝置。

實作Android Watchdog

由於Android的架構,重新啟動裝置需要應用程式具備系統權限。 為此,您需要使用製造商的簽名密鑰來簽署應用程式,否則看門狗會重新啟動播放器應用程式,而不會重新啟動裝置。

使用製造商金鑰的Android標誌

若要存取部分Android的特權API,例如​PowerManager​或​HDMIControlServices,您必須使用製造商的金鑰簽署android apk。

注意

先決條件:

您應先安裝Android SDK,然後再執行下列步驟。

請依照下列步驟,使用製造商的金鑰簽署Android應用程式:

  1. 從Google Play或AEM Screens Player下載頁面下載應用程式

  2. 從製造商獲取平台密鑰,以獲取​pk8​和​pem​檔案

  3. 使用尋找~/Library/Android/sdk/build-tools -name "apksigner",在android sdk中找到apksigner工具

  4. <pathto> /apksigner sign —key platform.pk8 —cert platform.x509.pem aemscreensplayer.apk

  5. 在Android sdk中尋找郵遞區號對齊工具的路徑

  6. <pathto> /zipalign -fv 4 aemscreensplayer.apk aemscreensaldified.apk

  7. 使用adb安裝安裝至裝置,安裝​aemscreensalpid.apk

瞭解Android Watchdog服務

跨Android監視程式服務是使用​AlarmManager​以cordova增效模組實作。

下圖顯示了監視程式服務的實現:

chlimage_1-31

1. Initialization​在初始化cordova增效模組時,會檢查權限,以查看我們是否擁有系統權限,進而查看重新啟動權限。 如果滿足這兩個條件,則會建立「待重新啟動的意圖」,否則會建立「待重新啟動的意圖」(基於其「啟動活動」)。

2.保持活動計時器​使用保持活動計時器每15秒觸發一個事件。 在此情況下,您必須取消現有的待定意圖(以重新啟動或重新啟動應用程式),並在相同的60秒內註冊新的待定意圖(實際上是延遲重新啟動)。

注意

在Android中,AlarmManager​用於註冊​pendingIntents,即使應用程式當機且其警報傳送與API 19(Kitkat)不精確,<a0/>AlarmManager<a1/>仍可執行。 在計時器的間隔和​AlarmManager的 pendingIntent的​報警之間保持一定的間隔。

3.應用程式當機​在當機時,向AlarmManager註冊的待重新引導方式不再重設,因此它會執行應用程式的重新引導或重新啟動(視cordova增效模組初始化時的可用權限而定)。

Android Player的大量布建

大量推出Android播放器時,需要布建播放器以指向AEM例項,並設定其他屬性,而不需手動輸入管理UI中的屬性。

注意

此功能可從Android player 42.0.372取得。

請依照下列步驟,在Android播放器中允許大量布建:

  1. 建立名稱為player-config.default.json的設定JSON檔案。
    請參閱範例JSON原則以及說明各種原則屬性使用情形的表格。

  2. 使用MDM或ADB或Android Studio檔案總管,將此原則JSON檔案拖放至Android裝置上的​sdcard​檔案夾。

  3. 在部署檔案後,使用MDM安裝播放器應用程式。

  4. 當播放器應用程式啟動時,它會讀取此設定檔,並指向適用的AEM伺服器,供其註冊並隨後控制。

    注意

    首次啟動應用程式時此檔案為​只讀,不能用於後續配置。 如果播放器在刪除設定檔之前啟動,只需解除安裝並在裝置上重新安裝應用程式即可。

策略屬性

下表匯總了策略屬性,其中包含範例策略JSON以供參考:

原則名稱 目的
伺服器 Adobe Experience Manager伺服器的URL。
解析度 裝置的解析度。
rebootSchedule 重新啟動的計畫適用於所有平台。
enableAdminUI 啟用管理員UI以在網站上設定裝置。 在完全配置並投入生產後,設為​false
enableOSD 啟用頻道切換器UI,讓使用者在裝置上切換頻道。 在完全配置並投入生產後,請考慮設定為​false
enableActivityUI 啟用以顯示活動的進度,例如下載和同步。 啟用疑難排解功能,並在完全設定後在生產中停用。
enableNativeVideo 啟用以使用原生硬體加速來播放視訊(僅限Android)。

範例JSON原則

{
  "server": "https://author-screensdemo.adobecqms.net",
"device": "",
"user": "",
"password": "",
"resolution": "auto",
"rebootSchedule": "at 4:00 am",
"maxNumberOfLogFilesToKeep": 10,
"logLevel": 3,
"enableAdminUI": true,
"enableOSD": true,
"enableActivityUI": false,
"enableNativeVideo": false,
"enableAutoScreenshot": false,
"cloudMode": false,
"cloudUrl": "https://screens.adobeioruntime.net",
"cloudToken": "",
"enableDeveloperMode": true
}
注意

無論是否插入實際的​sdcard,所有Android裝置都有​sdcard​資料夾。 此檔案在部署時會與「下載」檔案夾處於相同層級。 某些MDM(如Samsung Knox)可將此​sdcard​資料夾位置稱為​內部儲存

本頁內容