本文主要介紹 vivo 推送的接入流程,主要包括以下三個步驟。
註冊 vivo 推送
參考 vivo 推送平台使用指南,在 vivo 開放平台 上註冊帳號,並申請接入推送服務。
接入 vivo 推送
添加 推送 - vivo 組件,方式與添加推送 SDK 相同,參見 添加 SDK。推送 - vivo 組件僅包含適配代碼,不包含 vivo Push SDK。
前往 vivo SDK 文檔 下載 SDK 並整合到主工程中。 當前適配版本為 v2.3.4,如需使用更高版本,可根據需求修改,通常來說廠商 SDK 都會向下相容,如不相容可加入DingTalk群 145930007362 反饋適配新版的需求。
配置
AndroidManifest.xml(組件化方式在 Portal 工程中添加),並替換其中的com.vivo.push.api_key、com.vivo.push.app_id的值。<application> <service android:name="com.vivo.push.sdk.service.CommandClientService" android:process=":push" android:exported="true" /> <activity android:name="com.vivo.push.sdk.LinkProxyClientActivity" android:exported="false" android:process=":push" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> <meta-data android:name="com.vivo.push.api_key" android:value="VIVO開放平台提供" /> <meta-data android:name="com.vivo.push.app_id" android:value="VIVO開放平台提供" /> </application>如需使用混淆,則要添加相關混淆配置:
所有接入方式均需要添加 vivo 推送混淆規則。
如採用的是 AAR 接入方式,還需要 添加 mPaaS 混淆規則。
測試 vivo 推送
接入 vivo 推送後,您可以在 vivo 手機上啟動您的應用並確保調用了初始化方法(參見 訊息推送初始化),推送 SDK 會自動擷取 vivo 推送的廠商 token 並上報。
可以在殺掉應用進程的情況下推送測試訊息:
如果仍然能收到訊息,說明應用成功接入 vivo 推送。
如果不能收到訊息,請按照下文排查。
排查問題
檢查
AndroidManifest.xml配置是否添加,以及其中com.vivo.push.api_key、com.vivo.push.app_id的值是否和 vivo 開放平台一致。檢查 mPaaS 控制台是否開啟了 vivo 通道(參見 配置 vivo 推送通道),以及相關配置是否和 vivo 開放平台一致。
查看 logcat 日誌進行排查:
選擇 push 進程,過濾
mPush.PushProxyFactory,檢查是否存在以下日誌:D/mPush.PushProxyFactory: found proxy com.mpaas.push.external.vivo.Creator若無,說明添加 推送 - vivo 組件可能存在問題,請確認是否正確添加。
選擇 push 進程,過濾
mVIVO,檢查是否擷取到了 vivo 推送的廠商 token,如出現日誌“fail to turn on vivo push”:說明 vivo 推送註冊失敗,錯誤碼(state)參見 vivo 推送錯誤碼 。選擇主進程,過濾
report channel token, 檢查上報 vivo 廠商 token 是否成功,如出現以下日誌:report channel token error: xxxx說明上報廠商 token 失敗,請檢查 mPaaS 設定檔 的
base64Code是否有值,以及擷取設定檔時上傳的 apk 簽名和當前應用是否一致。
常見問題
vivo 推送支援哪些機型和系統版本
目前,SDK 支援的機型和最低系統版本如下表所示。有關 vivo 推送的其它相關問題,請參見 vivo 推送常見問題匯總。
