融雲im callkit 會話遇到的坑融雲研究

2021-08-29 02:24:15 字數 1072 閱讀 6564

1.應用收不到訊息

下面是來自融雲的官方解釋:

1.1首先,需要搞清楚兩個概念: push 訊息,後台訊息。

收到這兩種訊息的時候,在終端上的表現形式是一樣的,都是在通知欄顯示一條通知。但實際上它們走的壓根就不是一條通道。它們的區別是: push 訊息是指呼叫 rongim.disconnect() 斷開與融雲的連線以後收到的訊息。而後台訊息則是指按 home 鍵,應用退到後台後收到的訊息(此時和融雲仍然是連線狀態)。

搞清楚這兩者的區別並確認你的問題是 push 訊息的問題後,請繼續往下看。

1.2通常收不到 push 訊息,有以下幾個情況:

一. 退出應用的時候,必須呼叫我們的 disconnect() 方法,而不是 logout()。這樣退出後我們這邊才會啟動push程序。

二. push 程序的名字不能更改,必須是我們預設的名字,既 io.rong.push.

(2.6.0dev之後的版本,此程序名字可以修改)
三. 通過 ddms 或者終端裡敲入 adb shell ps|grep rong 檢視終端裡是否存在 io.rong.push 這個程序。

有些手機廠家做了特殊限制,不允許第三方後台程序啟動,所以我們的後台程序起不來,導致收不到 push 訊息。這種情況可以換個手機測試(如三星,大部分三星手機沒有做許可權限制)。另外大部分國產手機,有許可權設定的選單,比如小公尺,華為等,可以手動去安全中心,設定應用的自啟動許可權,後台執行許可權等,就可以收到push訊息了。

不過 vivo 和 oppo 有些型號的手機,一旦應用退到後台,系統會很快把它殺死,這種沒有辦法解決。目前市面上所有推送都存在這個問題,除非系統把該應用加入白名單。

四. push 程序存在,仍然收不到 push 訊息。

如果你的應用有訊息免打擾功能,那麼請確認當前登入賬號之前是否設定過訊息免打擾。如果不太確定,那最好去你的應用設定裡重新設定下訊息免打擾時間。 這裡要注意的是: 如果這個賬號之前在別的手機上設定過訊息免打擾,換一台手機登入或者解除安裝重灌的時候,融雲服務端記錄的仍然是之前設定的訊息免打擾狀態,所以這種情況下是收不到push訊息的。

重寫融雲會話列表

又有新技術點要來了。之前做的聊天功能只是能聊,與實際上的需要還是差點。現在需要重寫會話列表的item,總得知道跟誰聊吧。不怪產品麻煩,積極修改,雖然依舊還沒解決,但部落格老樣子先開始,邊研究邊寫。等會兒哈,我剛看過了官方文件,不是很懂,接下來要看看官方demo,且等我研究下。稍等片刻。自定義聊天會話...

融雲 IMKit 自定義會話介面

在會話介面使用 getintent getdata getqueryparameter targetid 獲取id getintent getdata getqueryparameter title 獲取訊息title在會介面中可以設定輸入框的模式。針對聊天會話的語音 文字切換功能 內容輸入功能 擴...

android 融雲 會話頁面 訊息設定樣式

效果 分析 1 頭像設定為圓形 2 訊息的背景設定樣式 3 訊息的內容顏色 實現 1 頭像設定為圓形 整合融雲後 全域性搜尋rc item conversation.xml 找到asyncimageview節點 新增 2個屬性 android scaletype centercrop 2 訊息的背景...