(若轉(zhuǎn)載咧七,請(qǐng)告知本人并附上原文鏈接衰齐,謝謝)
? ? 最近接手了一個(gè)集成即時(shí)通訊功能的項(xiàng)目,用的是環(huán)信的SDK继阻。用環(huán)信的接口可以快速實(shí)現(xiàn)即時(shí)通訊的很多功能耻涛。并且對(duì)官方demo稍加改動(dòng)基本能夠滿(mǎn)足項(xiàng)目需求。真機(jī)測(cè)試時(shí)瘟檩,發(fā)現(xiàn)圖片的轉(zhuǎn)發(fā)抹缕,每次都是轉(zhuǎn)發(fā)失敗。我開(kāi)始以為是我集成時(shí)有疏漏墨辛,逐行檢查代碼卓研。發(fā)現(xiàn)并不是我的問(wèn)題。從app store下載的官方demo同樣是轉(zhuǎn)發(fā)失敱丑 <帧哮幢!坑我按颉V菊洹!原因是ContactListSelectViewController這個(gè)控制器里無(wú)法正確獲取到想轉(zhuǎn)發(fā)的圖片的緩存地址垛叨。
修改如下圖:
ContactListSelectViewController是取數(shù)據(jù)伦糯,那么存數(shù)據(jù)要在ChatViewController控制器做存數(shù)據(jù)的操作。消息類(lèi)型寫(xiě)死為EMChatTypeChat嗽元,是因?yàn)榱哺伲徽撌谴鎲瘟慕缑孓D(zhuǎn)發(fā),還是從群聊界面轉(zhuǎn)發(fā)剂癌,都只能轉(zhuǎn)發(fā)給個(gè)人淤翔,所以這里寫(xiě)死,目前沒(méi)有問(wèn)題佩谷。
如下圖:
上面一定要判斷一下消息體類(lèi)型旁壮,只有消息體為圖片類(lèi)型(EMMessageBodyTypeImage)才需要保存圖片本地。如果不做判斷的話(huà)谐檀,點(diǎn)擊氣泡馬上崩掉抡谐。
? ? 個(gè)人感覺(jué)雖然能解決圖片轉(zhuǎn)發(fā)的問(wèn)題,但并不是最好的解決辦法桐猬,雖然對(duì)環(huán)信demo的代碼改動(dòng)最少麦撵。有更好的辦法,歡迎在評(píng)論區(qū)交流溃肪。
(若轉(zhuǎn)載免胃,請(qǐng)告知本人并附上原文鏈接,謝謝)