網名館

你知道微信XX撤回消息並親了你一下原理是什麼嗎

微信“XX撤回了一條消息並親了你一下”的玩法教程已迅速火爆在微信朋友圈,雖説是微信的一次BUG,但仍是讓小夥伴們玩的不亦樂乎。那麼,你知道撤回消息並親了你一下是怎麼產生的嗎?它的魔法原理是什麼嗎?

你知道微信XX撤回消息並親了你一下原理是什麼嗎

很多人都玩得不亦樂乎,甚至馬上就有教程和生成器流了出來。

然而這其實並不是微信更新的一個新功能,於是當大家玩得正開心的時候,微信以迅雷不及掩耳盜鈴之勢把這個Bug修復了(不過之前修改過的依然可以這樣玩)。

我知道你意猶未盡還有些好奇,為什麼可以這麼玩,又是怎樣的一個原理呢?朋友圈有機智的小夥伴給出了這樣的解釋,我知道你看不懂,我們通俗的解釋一下。

你知道微信XX撤回消息並親了你一下原理是什麼嗎 第2張

我們平時在手機上打出來的字並不是你們簡單看到的字,而是由一堆編碼組成的。這個編碼非常容易被篡改,所以當你修改了編碼,呈現出來好像字沒變,但實際上最終展示的順序就會發生變化。所以你會在聊天主頁面看見經過這樣設置的人發的消息都是反過來的,因為他加入特殊字符後本來呈現出來的就是反的。但是通知欄推送和主界面下這些就是原始的順序,到聊天界面就會經過編碼,呈現出正常的順序。

你知道微信XX撤回消息並親了你一下原理是什麼嗎 第3張

當我們撤回一條消息的時候,按照規則就會獲取已經被做了手腳的文字中的姓名了,但你又會疑惑,為何會有XX撤回一條消息並XXX這樣被分開呢,如果只是單純反過來展示文字。其實很簡單,就是加了一個分隔符,把你的暱稱和增加的文字分開。讓暱稱正常顯示,讓增加的文字從右往左顯示。

電腦看到的過程是這樣的:

“小明”撤回了一條消息——>增加自定義文字了飯吃去後然,變成“小明”了飯吃去後然撤回了一條消息——>讓自定義的文字從右往左顯示,於是這些字就跑到了整句的最後面——>“小明”撤回了一條消息然後去吃飯

但你可能會覺得為何微信要支持反着來?因為微信是一個國際化的產品,支持阿拉伯語,而阿拉伯語是從右往左讀的。為了兼容這種閲讀習慣,微信便支持這種轉換的字符。所以微信只要禁止暱稱修改使用這個讓文字翻轉的字符就可以了。

那為什麼之前沒人發現,現在才有人玩?不,之前就可以玩,只是你不知道,而且還有很多種玩法。比如:

你知道微信XX撤回消息並親了你一下原理是什麼嗎 第4張

還有你們熟悉的瘦子的字體特別小的玩法…(縮小字符!)

你知道微信XX撤回消息並親了你一下原理是什麼嗎 第5張

這些都是利用了 Unicode 開發出來的各種玩法。如果你懂代碼還有創意,還可以開發出各種新的玩法來。

標籤:微信 xx 並親 撤回