Android推播傳遞卡在「已傳送給服務提供者」狀態
本文解決Adobe Campaign Classic v7中Android推播傳遞卡在 傳送至服務提供者 狀態中,導致行動應用程式無法接收推播通知的問題。
說明 description
環境
Adobe Campaign Classic v7
問題/症狀
Android推播傳遞的廣泛記錄卡在 傳送給服務提供者 狀態,導致行動應用程式無法接收推播通知。
例如:
16/09/2024 13:23:19 Sent to the service provider Not defined Message to '*' pushed to the connector.
要再現的步驟:
- 傳送Android推播通知傳遞。
- 檢查廣泛記錄檔的狀態
>
推播通知卡在 傳送給服務提供者 狀態,而您在選取的行動應用程式上未收到任何Android推播通知。 - 在文字欄位中,您會看到 傳送至'*'的訊息已推送至聯結器。
解決方法 resolution
如果您尚未完全移轉至 FCM HTTPv1.,可能會發生這種狀況
Android推播通知傳送必須符合三個條件才能傳送:
-
Adobe Campaign行銷執行個體的Android行動應用程式必須使用API版本 HTTP v1,並為Android應用程式新增正確的詳細資料。
您可以使用以下檔案來確保您的Android行動應用程式正確使用 HTTP v1:
推播通知通道變更 -
Android路由外部帳戶中的最新
androidPushConnectorV2.js (nms)
Javascript聯結器是用來傳送傳遞。注意: 如果您使用自訂Android推播聯結器,請確定您將變更與最新的OOTB
androidPushConnectorV2.js (nms)
Javascript聯結器合併。 -
您在Android推播通知傳遞中使用的Android傳遞範本具有正確的
androidCheckParams
,如下所示:code language-none <androidCheckParams> <source><!--[ CDATA[ <% if( appSubscription.mobileApp.label!='' && appSubscription.mobileApp.img!='' && appSubscription.mobileApp.fcmProtocol!='' &&(( appSubscription.mobileApp.senderId!='' && appSubscription.mobileApp.password!='' ) || ( appSubscription.mobileApp.fcmProjectId!='' && appSubscription.mobileApp.fcmPrivateKey!='' && appSubscription.mobileApp.fcmClientEmail!='' ) ) && String(message.delivery.idTracking)!='' && String(message.delivery.idMarketing)!='' ) { %--> 'OK' <% } else { %> 'Error' <% } %>] ] ></source> </androidCheckParams>
為了確認推播通知是使用 HTTPv1 傳送,請確定廣泛記錄檔中的文字如下:
HTTPv1 SUCCESS 200: message to '*' has been transmitted to FCM
如需更詳細的說明,請遵循下列連結:
ACC - Android — 移轉至FCM HTTPv1的程式