Android集成HMS推送(同時集成阿里雲輔助通道)的問題

問題場景

按照HMS官方文檔集成,單獨的demo可以運行,再現有項目上把原來阿里雲集成的hms單獨集成出來,因爲再國外的時候,阿里雲獲取token會失敗,但是單獨集成hms是可以再海外使用的,把阿里雲的hms單獨集成處理後,控制檯能打印出token,但是再hms的後臺推送通知和消息都接收不到,獲取hms的SDK的日誌顯示通知已經推送到了手機,

可能原因

1.阿里雲自帶的hms沒有剔除乾淨,導致自己重新集成的hms首先初始化,然後阿里雲裏集成的hms會再初始化一次,但是獲取的token失效,通過和華爲的官方技術人員溝通得知發送通知的token和本地的token不一致。
2.沒有在Application裏的onCreate函數裏初始化(自動初始化和getToken不要同時使用)

解決辦法

再重新集成hms之前,先剔除阿里雲集成的hms,主要有build.gradle裏的帶hms關鍵詞的依賴,application裏面的帶hms或者帶huawei關鍵詞的代碼,AndroidMainfest文件裏的帶huawei和hms的mate配置、activity和receiver的相關配置,最重要的還有jar,不需要去一個個找,只需要再移除build.gradle依賴的情況下清緩存重啓AS即可(File->lnvalidate Cache/Restart)會自動重新加載一遍依賴。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章