文章詳情頁
android 微信是如何實現即時更新好友頭像的
瀏覽:113日期:2022-10-02 16:23:57
問題描述
微信好友的頭像肯定是做緩存的,那么好友頭像修改后,用戶這邊是如何實現立即就能看到修改后的頭像的呢?
問題解答
回答1:如果要做到實時更新:就需要使用推送,A修改頭像之后,通知服務端,服務端再對A的好友進行推送通知更新A的頭像。
回答2:先拉取的肯定是頭像url啊,本地緩存是根據url做的,本地每次都拉取頭像url然后通過加載模塊去加載的時候會判斷當前緩存的圖片是否與此url一致,不一致才會通過新的url去下載。
回答3:數據庫中保存一個字段:上次頭像修改時間.
回答4:推測一下,括號里的過程是瞎猜的:用戶A上傳新頭像→服務器處理新頭像→將新頭像URL存儲到用戶表的某個字段里,記載更改時間(→同步頭像到CDN→更新用戶表的頭像URL字段,記載更改時間)→服務器向在線的客戶端發推送→客戶端更新頭像。
回答5:猜測一下,可以設置一個標識字段,默認為0,用戶更新頭像時把它置為1,在推送消息或定期同步時,同時推送這個標識。手機在處理消息或定期同步聯系人信息的同時,判斷這個標識,如果標識為1,說明好友上傳了新頭像,這時候再GET請求拉取新頭像并緩存在本地,同時更新服務器端標識為0,防止下一次同步時重復請求頭像。(PS:只是一點個人的想法。)
標簽:
微信
相關文章:
1. android-studio - Android Studio 運行項目的時候一堆警告,跑步起來!?2. MySQL數據庫中文亂碼的原因3. angular.js使用$resource服務把數據存入mongodb的問題。4. 如何解決Centos下Docker服務啟動無響應,且輸入docker命令無響應?5. angular.js - 關于$apply()6. dockerfile - [docker build image失敗- npm install]7. mysql - 新浪微博中的關注功能是如何設計表結構的?8. 表單提交驗證,沒反應,求老師指點9. nignx - docker內nginx 80端口被占用10. angular.js - Ionic 集成crosswalk后生成的apk在android4.4.2上安裝失敗???
排行榜
