若出現 OPPO 渠道訊息推送失敗的情況,請參考以下步驟進行問題排查:
確保已按照 OPPO 推送接入 說明成功接入 OPPO 推送。接入步驟包括:
下載 OPPO Push SDK 的庫並引入;
添加 推送 - OPPO 組件;
配置
AndroidManifest.xml;接入
MpaaSNcActivity。說明參考 OPPO 推送平台使用指南 在 OPPO 開放平台 註冊帳號並申請接入推送服務。
mPaaS 不提供 OPPO Push SDK 的庫(mcssdk-2.xx.jar),請前往 OPPO SDK 文檔 下載 SDK 並整合到主工程中。
檢查引入的 OPPO 推送 mcssdk-2.xx.jar 檔案對應的 SDK 版本是否正確。
當 mPaaS 基準為 10.1.68.29 及以上版本時,支援 OPPO Push SDK V2.1.0(mcssdk-2.1.0.jar)。
當 mPaaS 基準版本低於 10.1.68.29 時,僅支援 OPPO Push SDK V2.0.2(mcssdk-2.0.2.jar)。
檢查
AndroidManifest.xml設定檔中service是否配置正確。不同版本 SDK,需要添加的service類不同。採用 OPPO Push SDK V2.0.2 版本(mPaaS 基準版本小於 10.1.68.29)時,對應的
service類為com.heytap.mcssdk.PushService和com.heytap.mcssdk.AppPushService,配置如下:<uses-permission android:name="com.coloros.mcs.permission.RECIEVE_MCS_MESSAGE" /> <uses-permission android:name="com.heytap.mcs.permission.RECIEVE_MCS_MESSAGE"/> <application> <!-- V2.0.2 添加 Service START--> <service android:name="com.heytap.mcssdk.PushService" android:permission="com.coloros.mcs.permission.SEND_MCS_MESSAGE" android:process=":push"> <intent-filter> <action android:name="com.coloros.mcs.action.RECEIVE_MCS_MESSAGE"/> </intent-filter> </service> <service android:name="com.heytap.mcssdk.AppPushService" android:permission="com.heytap.mcs.permission.SEND_MCS_MESSAGE" android:process=":push"> <intent-filter> <action android:name="com.heytap.mcs.action.RECEIVE_MCS_MESSAGE"/> </intent-filter> </service> <!-- V2.0.2 添加 Service END--> <meta-data android:name="com.oppo.push.app_key" android:value="OPPO開放平台擷取" /> <meta-data android:name="com.oppo.push.app_secret" android:value="OPPO開放平台擷取" /> </application>採用 OPPO Push SDK V2.1.0 版本(基準版本大於等於 10.1.68.29)時,對應的
service類為com.heytap.msp.push.service.CompatibleDataMessageCallbackService和com.heytap.msp.push.service.DataMessageCallbackService,配置如下:<uses-permission android:name="com.coloros.mcs.permission.RECIEVE_MCS_MESSAGE" /> <uses-permission android:name="com.heytap.mcs.permission.RECIEVE_MCS_MESSAGE"/> <application> <!-- V2.1.0 添加 Service START--> <service android:name="com.heytap.msp.push.service.CompatibleDataMessageCallbackService" android:permission="com.coloros.mcs.permission.SEND_MCS_MESSAGE" android:process=":push"> <intent-filter> <action android:name="com.coloros.mcs.action.RECEIVE_MCS_MESSAGE"/> </intent-filter> </service> <service android:name="com.heytap.msp.push.service.DataMessageCallbackService" android:permission="com.heytap.mcs.permission.SEND_PUSH_MESSAGE" android:process=":push"> <intent-filter> <action android:name="com.heytap.mcs.action.RECEIVE_MCS_MESSAGE"/> <action android:name="com.heytap.msp.push.RECEIVE_MCS_MESSAGE"/> </intent-filter> </service> <!-- V2.1.0 添加 Service END--> <meta-data android:name="com.oppo.push.app_key" android:value="OPPO開放平台擷取" /> <meta-data android:name="com.oppo.push.app_secret" android:value="OPPO開放平台擷取" /> </application>