你不知道的微信朋友圈分組權限真相
朋友圈社交
很多人都說,微信朋友圈是近年來最偉大的社交發明。取代人人和微博,微信已經成為人們最主要的社交工具,沒有之一。大部分90后的社交軟件都經歷了從QQ空間–人人–微博–微信的轉變。人人自產內容不足,垃圾分享泛濫,定位飄忽不定注定了其失敗的結局。而微博是屬于大V的平臺,離普通人太遙遠,其開放、單項的關系的機制讓其更加傾向于“社區”的屬性而不是社交。
朋友圈是微信 4.0 版本的主推功能,這個功能是微信在熟人互動的拓展。相比于微博,微信朋友圈最大的不同,朋友圈是雙向認證的,因此在我們朋友圈里面出現的新鮮事都來源于我們熟知的朋友。
朋友圈最偉大的功能,就是分組。它的與眾不同之處在于,你沒法判斷你朋友發布的內容是公開還是部分可見、甚至就你一人可見。這給了很多人偽裝的機會,你可以按照自己的意愿向不同群體展現你的不同生活狀態。而你的朋友只能看到你的故事的一個版本。有些人明明有女朋友,但卻在朋友圈每天發表單身的感慨;有些人明明通宵打游戲,卻在朋友圈向父母的分組發了條通宵復習的狀態。每個人都希望將自己最光彩的一面展示到朋友圈,出門旅游一趟,各種45度自拍,拍完后還要美圖磨個皮,從幾十張中選擇2-3張上傳朋友圈,然后再配上一些心靈雞湯、人生格言。美圖+格言造就了一條高逼格的狀態。
消息機制和數據結構
解釋下文的之前,首先統一下文中表述的定義。
- Moment:用戶發表的某個主題
- Profile:朋友的朋友圈主頁
- Timeline:當前用戶的朋友圈
- My Posts:用戶自己的朋友圈主頁
本來主要討論timeline的問題,沒有涉及到profle的問題。Moment 是profile、timeline和my posts的一個子集。然后Timeline的消息機制比較復雜,Timeline涉及到你所有朋友的moments,還夾雜著權限和發布時間的問題。因為Profile是針對特定用戶的主頁,不需要像timeline一樣需要對所有朋友的moments進行排序,處理起來簡單很多。用戶查看其朋友的朋友圈主頁profile,系統會把其朋友發布所有的moment,按照權限進行過濾一遍,然后再呈現給用戶。
我們來仔細分析下朋友圈的消息機制。微信朋友圈的顯示最基本規則是:你的朋友圈的任何內容都來源于你的好友。
- 在沒有屏蔽對方朋友圈或者被對方屏蔽的情況下,你可以看到好友所發布的狀態和圖片。
- 關于好友狀態下的評論,你只能看到來源于好友的評論,無法看到來源于陌生人的評論。
- 好友回復給陌生人的評論是不可見的。
- 發布朋友圈的每條狀態時,可以設置“誰可用看”。
“誰可以看”這個功能里面,通過采用了給用戶設置“標簽”來設置分組,這個標簽的分組與微信通訊錄標簽一致。公開、私密是兩個比較寬泛的分組,好友都可見或者都不可見。
分析兩種比較常用的用戶場景:
場景1:如果之前設置了分組,Group1, Group 2,?然后好友A不在Group 1里面,你發布了狀態設置只對Group 1可見。之后你把A加入到了Group 1里面,這種時間,A是否能夠見到你的圖片?
答案:A無法看到你的圖片。哪些朋友能看到你的消息,在你發布圖片的時候已經決定了。系統將這條狀態寫入有閱讀權限的用戶的timeline。當用戶在發表消息之后更改分組,這個時候不會更改消息的閱讀權限。這個過程如圖所示。首屏時時刻刻出現的朋友圈更新小紅點,也驗證了下圖的邏輯。
這里面有涉及到發布者和觀看者權限設置和過濾問題。發布者和觀看者都可以設置屏蔽清單。如果發布者設置了權限,只能讓A、B觀看這條moment。那么這條moment會寫入A-timeline和B-timeline。觀看者C設置“不看A的朋友圈”。這樣觀看者C的客戶端根據存儲的屏蔽清單會過濾掉A的moment,或者服務器端在C讀取timeline的時候,直接過濾掉A的moment。所以最后只有B能看到A的moment。
場景2:如果你發布了圖片,只對Group 1可見,然后點擊右上角的設為私密照片,這時候照片只對自己可見,然后再設置為公開照片,這時候你的照片是只對Group 1可見呢還是所有人可見?
答案:消息在發布時,可以設置為三種權限;發布之后可以更改消息權限。部分可見/不可見和公開照片本質上都屬于公開照片。這里有個很有意思的邏輯,部分可見/不可見設置私密之后再設為公開,其實照片還是部分可見/不可見(不是真正的公開照片)。
結合場景1和場景2,我們可以發現,當我們設置了消息的權限為部分可見/不可見,那么在權限之外的人無論如何都無法看到你的消息(不管你更改分組還是更改消息權限)。
場景1屬于比較常見的用戶場景,用戶的朋友圈的圈子都在不斷的增大。一種常見的例子,用戶之前發布了之前工作上的日常信息和狀態都設置為“同事”分組可見。那么用戶新添加一個同事為好友,把他拉入“同事”分組。他的新同事想了解他之前的狀態,卻無法看到相關信息。這從邏輯上來說,不甚合理。
所以當用戶更改分組權限的時候,服務器應該能夠去更新相應的moment的權限。然后去調整受影響朋友的timeline,這較考量平臺的處理能力。這種方式可以解決上述的場景1的問題。也許出于性能方面的考慮,微信沒有這么做。
用戶體驗
談到這里,順便談談微信體驗待改進的地方?,F在閱讀公眾號文章、購物、游戲時,朋友發來消息,用戶需要跳出當年頁面,進入對面頁面,但是完成了對話頁面后,返回的是微信的對話列表頁面。用戶還需要重新去尋找之前的頁面。安卓端微信可以輸入“//multiwebview”,點擊發送,就成功激活微信隱藏的多窗口切換功能。期待IOS端的改進優化。
除了即時通訊和朋友圈,我微信使用的最多的功能就是微信群。微信群如同QQ群一樣是擴展社交的一種絕佳手段。微信建群零成本,導致微信群泛濫。大部分用戶的微信聊天頁的前幾行長期被微信群所占用,而且微信群的消息刷新的很快,你很難找到對自己真正有用的信息。特別是每個上拉刷新聊天記錄只能刷新10條。像QQ群就有類似的群助手,統一管理所有的群。?現在的屏蔽群,只是取消了notification。有消息時,還是會置頂顯示在?對話窗口里面??梢栽趯υ捔斜眄撁婵梢越⒁粋€微信群助手,統一管理所有的微信群。還有就是作為一個強迫癥患者,消息的小紅點總是我最糾結的地方。加入一鍵消除紅點這個功能,會降低點擊量和KPI,但是從提升用戶體驗的角度來說,還是很值得的。
雖然很多功能可以改進的更好,但是會損失一定能夠的用戶體驗。對一個牛逼的產品而言,減法做得好才是真的牛。
本文為作者@Harrison(微信號:jiahaifeng1123) 投稿發布,轉載請注明來源于人人都是產品經理并附帶本文鏈接
??
更改權限解決場景1的問題,我覺得不只是性能因素。
用戶以前發的moment,可能并不想讓新加入group的人知道。
將一個朋友加入group的操作,應該只意味著以后的moment可以給他/她看。
您覺得呢?
感謝題主分析,但是還是得注意部分邏輯和錯別字的影響!
錯別字 ??
??
想問問,安卓端微信可以輸入“//multiwebview”,點擊發送,就成功激活微信隱藏的多窗口切換功能。這里是在哪里點發送捏?
這個方法適用于安卓5.0及以上版本的安卓系統、微信6.1及以上版本的微信,不適用于iOS版!在微信任意聊天窗口中(公眾號服務號也可以),輸入“//multiwebview”,點擊發送,就成功激活微信隱藏的多窗口切換功能了!
試試之后可以么?