OPPO 消息推送失败

若出现 OPPO 渠道消息推送失败的情况,请参考以下步骤进行问题排查:

  1. 确保已按照 OPPO 推送接入 说明成功接入 OPPO 推送。接入步骤包括:

    1. 下载 OPPO Push SDK 的库并引入;

    2. 添加 推送 - OPPO 组件

    3. 配置 AndroidManifest.xml

    4. 接入 MpaaSNcActivity

      说明
  2. 检查引入的 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)。

  3. 检查 AndroidManifest.xml 配置文件中 service 是否配置正确。不同版本 SDK,需要添加的 service 类不同。

    • 采用 OPPO Push SDK V2.0.2 版本(mPaaS 基线版本小于 10.1.68.29)时,对应的 service 类为 com.heytap.mcssdk.PushServicecom.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.CompatibleDataMessageCallbackServicecom.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>