本節說明如何設定Android播放器。 它提供設定檔、可用選項和建議的資訊,說明要用於開發和測試的設定。
此外,Watchdog是從當機中恢復播放器的解決方案。 應用程式需要向監視程式服務註冊,然後定期向其處於活動狀態的服務發送消息。 如果監視程式服務未在規定時間內收到保持活動消息,則服務會嘗試重新啟動設備以進行乾淨的恢復(如果它具有足夠的權限)或重新啟動應用程式。
若要實作適用於AEM畫面的Android Player,請安裝適用於AEM畫面的Android Player。
請造訪AEM 6.5 Player Downloads頁面。
如果您使用AEM Screens 6.5.5 Service Pack,則必須為Android Player設定環境。
在所有AEM作者和發佈例項上,將登入Token Cookie 的 SameSite屬性從Lax設為None,從Adobe Experience Manager Web Console Configuration設定。
請遵循下列步驟:
使用導覽至「Adobe Experience Manager Web Console設定」。http://localhost:4502/system/console/configMgr
搜尋Adobe Granite Token驗證處理常式。
將login-token Cookies的SameSite屬性從 Lax 設為 None 。
按一下「儲存」。
臨機方法可讓您安裝最新的Android Player(.exe)。 請造訪AEM 6.5 Player Downloads頁面。
下載應用程式後,請依照播放器上的步驟完成臨機安裝:
長按左上角以開啟管理面板。
從左側動作功能表導覽至Configuration,然後輸入您要連線至的AEM例項位置(位址),然後按一下「儲存a3/>」。
從左側操作菜單導航到設備註冊連結,以檢查設備註冊過程的狀態。
如果State是REGISTERED,您會注意到Device id欄位將會填入。
如果State是UNECROVERED,則可使用Token註冊裝置。
由於Android的架構,重新啟動裝置需要應用程式具備系統權限。 為此,您需要使用製造商的簽名密鑰來簽署應用程式,否則看門狗會重新啟動播放器應用程式,而不會重新啟動裝置。
若要存取部分Android的特權API,例如PowerManager或HDMIControlServices,您必須使用製造商的金鑰簽署android apk。
先決條件:
您應先安裝Android SDK,然後再執行下列步驟。
請依照下列步驟,使用製造商的金鑰簽署Android應用程式:
從Google Play或AEM Screens Player下載頁面下載應用程式
從製造商獲取平台密鑰,以獲取pk8和pem檔案
使用尋找~/Library/Android/sdk/build-tools -name "apksigner",在android sdk中找到apksigner工具
<pathto> /apksigner sign —key platform.pk8 —cert platform.x509.pem aemscreensplayer.apk
在Android sdk中尋找郵遞區號對齊工具的路徑
<pathto> /zipalign -fv 4 aemscreensplayer.apk aemscreensaldified.apk
使用adb安裝安裝至裝置,安裝aemscreensalpid.apk
跨Android監視程式服務是使用AlarmManager以cordova增效模組實作。
下圖顯示了監視程式服務的實現:
1. Initialization在初始化cordova增效模組時,會檢查權限,以查看我們是否擁有系統權限,進而查看重新啟動權限。 如果滿足這兩個條件,則會建立「待重新啟動的意圖」,否則會建立「待重新啟動的意圖」(基於其「啟動活動」)。
2.保持活動計時器使用保持活動計時器每15秒觸發一個事件。 在此情況下,您必須取消現有的待定意圖(以重新啟動或重新啟動應用程式),並在相同的60秒內註冊新的待定意圖(實際上是延遲重新啟動)。
在Android中,AlarmManager用於註冊pendingIntents,即使應用程式當機且其警報傳送與API 19(Kitkat)不精確,<a0/>AlarmManager<a1/>仍可執行。 在計時器的間隔和AlarmManager的 pendingIntent的報警之間保持一定的間隔。
3.應用程式當機在當機時,向AlarmManager註冊的待重新引導方式不再重設,因此它會執行應用程式的重新引導或重新啟動(視cordova增效模組初始化時的可用權限而定)。
大量推出Android播放器時,需要布建播放器以指向AEM例項,並設定其他屬性,而不需手動輸入管理UI中的屬性。
此功能可從Android player 42.0.372取得。
請依照下列步驟,在Android播放器中允許大量布建:
建立名稱為player-config.default.json
的設定JSON檔案。
請參閱範例JSON原則以及說明各種原則屬性使用情形的表格。
使用MDM或ADB或Android Studio檔案總管,將此原則JSON檔案拖放至Android裝置上的sdcard檔案夾。
在部署檔案後,使用MDM安裝播放器應用程式。
當播放器應用程式啟動時,它會讀取此設定檔,並指向適用的AEM伺服器,供其註冊並隨後控制。
首次啟動應用程式時此檔案為只讀,不能用於後續配置。 如果播放器在刪除設定檔之前啟動,只需解除安裝並在裝置上重新安裝應用程式即可。
下表匯總了策略屬性,其中包含範例策略JSON以供參考:
原則名稱 | 目的 |
---|---|
伺服器 | Adobe Experience Manager伺服器的URL。 |
解析度 | 裝置的解析度。 |
rebootSchedule | 重新啟動的計畫適用於所有平台。 |
enableAdminUI | 啟用管理員UI以在網站上設定裝置。 在完全配置並投入生產後,設為false。 |
enableOSD | 啟用頻道切換器UI,讓使用者在裝置上切換頻道。 在完全配置並投入生產後,請考慮設定為false。 |
enableActivityUI | 啟用以顯示活動的進度,例如下載和同步。 啟用疑難排解功能,並在完全設定後在生產中停用。 |
enableNativeVideo | 啟用以使用原生硬體加速來播放視訊(僅限Android)。 |
{
"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資料夾位置稱為內部儲存。