Back to Silas S. Brown's home page

Understanding rejection on WeChat (Weixin)

(Quick links: cache cleanup, audio, pictures and video, website blocking. See also URL encoder for mobile chat.)

Many Chinese people now prefer to manage their contacts using a proprietary mobile messaging and social networking application called WeChat (微信)Wēixìn. If you frequently meet them, you might be tempted to set up your own WeChat ID for their convenience. This can however lead to some quite ephemeral contact sharing (e.g. someone you met on a bus adds you but later deletes you). Since I found very little English documentation about how this manifests itself, I experimentally confirmed the following in 2015:

Other party's actionResult on your side
Delete conversationNo immediate effect. If you send further messages, a new conversation is started on the other device, but it still looks like one continuous conversation on yours.
Clear chat historySimilar to "Delete conversation" above
Delete and Leave (in a group chat)Deletes their copy of the chat history and removes them from the group. The group continues to exist, and is not notified of their departure unless other members actively re-read the membership list. (To really shut down a group, an administrator can remove each member from it. Even then, each member continues to keep a copy of the group chat history for the time they were a member, until they delete it themselves or reinstall etc.)
Block (加入jiārù 黑名单)hēimíngdānNo immediate effect unless you check their Album (Moments), which behaves as if they'd selected "Delete contact" (below). But if you send further messages, you are told "The message is successfully sent but rejected by the receiver" and the other party is told nothing. (The word "receiver" here evidently means the receiving account, not the receiving device---the "rejected" text still appears even if the other party's phone is powered off at the time.) They can still send you messages. Note also that if you send a "broadcast message" (群發, located under Me / Settings / General / Features for some reason), you are not told which recipients reject it; you must send individual messages to be told.
Delete contact (删除)shānchúNo immediate effect unless you check their Album (Moments), which will be blank if they've turned off "Public Moments" in the privacy settings (but this could also mean they've seleted "Don't share my moments" with you, or simply haven't ever posted anything for non-Tagged contacts); if they have "Public Moments" turned on then you will see the message "Only 10 posts of this user are visible" (the Chinese version of this message begins "non good-friend" which was lost in translation), and the options to Like or comment on the posts are not displayed (but some versions of WeChat still let you "Like" the album "cover"). Not to be confused with the message "Only 3 days of Moments are viewable" (which happens if they set Settings / Privacy / Set a time limit for Moments viewable by others)---that one applies whether or not you've been deleted, and still lets you comment if not.

If they deleted you and you try to send further messages outside the Album, you are automatically put back through the process of adding yourself to their contacts: if they've turned on "friend confirmation", you'll see "(Person) has requested friend verification. Please send a friend request to chat" with a link to do it; otherwise your message goes through immediately and they are given the message along with the option to add you. Previous conversations are deleted from their side but not from yours. "Broadcast messages" are silently dropped as above.

Incidentally it may be worth knowing that the Chinese version of "Moments" is, not 片刻piànkè as the English word might suggest, but 朋友圈péngyouquān "circle of friends" (sometimes colloquially abbreviated to 票圈piàoquān because 票 has the 'p' and the 'y' sound). But I've seen it used with the measure word tiáo (strip), which suggests at least some users still think of 朋友圈péngyouquān as referring to the list of posts rather than the people to whom they're attributed.

Block and delete contactBehaves exactly like Delete contact alone, since deleted contacts are also removed from the Blocked List
拉黑Lā hēi (拉进lājìn 黑名单)hēimíngdānAs far as I can tell, these are not actual WeChat options but are colloquial terms for the above 'block' or 'delete' operations, probably carried over from other software. However I have not tried every version on all platforms---there might be variation in terminology between WeChat versions.
Report (投诉)tóusùNo immediate effect. I don't know what happens if an administrator approves the report.
Uninstall the WeChat applicationNo effect. They're just offline until they reinstall. I don't know how long it takes for an unused account to expire.
Delete accountContact is greyed out and marked "Account deleted"; selecting it says "account deleted by other user" and presents a Delete button which, if pressed, also deletes the conversations; otherwise any attempt to send more messages is met with "The other user cannot receive message"
Spontaneous "Delete contact" is also possible. This is when WeChat deletes one of your contacts, resulting in the person and all previous chats disappearing without trace, as if you'd deleted it yourself. Since "Delete contact" takes 5 screen taps, it cannot easily be blamed on an overly-sensitive touch-screen, and since I was unable to reproduce it, I can only conclude it's either a race-condition bug or else a user action available only in the China version of the software and/or to an administrator. (Please don't 'gaslight' me: I know that contact existed before it disappeared! On 7th August 2015 a Shanghai Daily reporter used the sentence "The woman vanished from Wang's WeChat contacts afterward", which might imply a "completely disappear from the other party's contacts" function somehow being available in China, unless the word "vanish" was here used metaphorically.)

Image and video limits

If pasting a scanned document into a WeChat conversation as an image, the size limit is 300KiB, after which the image is shown only as a blurred preview unless the recipient presses a small button they might not notice. So it's best to stay below 300KiB.

I have a separate page for technical information on creating narrow-column screenshots.

The size limit for inline videos is just under 14MiB, and the mobile application should be used to introduce these into the WeChat network (i.e. by 'Share' or 'Send' from another mobile application)---at least some versions of the desktop application send videos as "files" that need extra action to view. Attempts to send videos larger than 14MiB on the mobile application get the error "unable to import", although the "say something" caption (if any) is sent anyway. The error "Unable to share this video due to unspported format" (e.g. if trying to post a short video to Moments) probably means you need to recode to h264.

By comparison, WhatsApp usually compresses inline images to around 250k (with no option to see full size) and limits video to 16MiB (as of 2017; best sent from the mobile application), Telegram Messenger scales down to max 1280 pixels per dimension and sends the result as an 87%-quality JPEG (unless uploaded as a file) but has a much more generous video limit, and LINE can send large JPGs but the recipient must save (to Pictures/LINE) to access resolutions higher than the zoomed-out screen (this screen's "pinch to zoom" does not add more detail), so you'd have to set a reduced DPI to avoid double-bluring.

Audio recordings

MP3 files are sent as "files" no matter what, so the desktop application can be used ("drag and drop"); if using the mobile application, shared files (unlike videos) need to be added to "WeChat Favourites" before they can reliably be sent to a chat. Once in Favourites, the option to "forward" from the "Favourites" screen is unreliable; it seems better to go into the chat itself and press the + button, scroll to the Favourites option, and find the MP3 that way. Ensure it is uploaded before deleting from Favourites. After you delete it from Favourites, you will get the message "This file is no longer available" when you try to open it in the chat, but the other party should still be able to access it for a few days.

Website blocking

WeChat's built-in browser variant (which is used if a user taps a link in a chat) can block innocent charity or corporate websites due to Tencent's poor quality control of its block-list, which I confirmed in mid-2018 is not an exact copy of any government's official block-list and which is applied to WeChat users in every country (and also to users of Tencent's other product "QQ Browser", but that one put a small "continue anyway" button on its warning message, whereas WeChat did not). If the innocent web article you send to your friends is served from a domain that happens to be on WeChat's current block-list, your recipient will get an "illegal content" notice if they tap the URL. The appeal form requires an ICP number, which is clearly inappropriate for non-Chinese domains and casts doubt on WeChat's claim to be "international".

For example, in mid 2018 WeChat globally blocked the publisher of this article about stress that I had linked to from my unofficial exam stress guide---I'm aware the publisher is religious and there are different religious opinions (although it's hard to fault that article), but the publisher is definitely legal in most countries. The fact that WeChat for Android's version number was 6.6.6 at the time of the block was, I believe, mere coincidence.

Reverse-engineering the Android APK shows page-load requests are intercepted via the WebViewClient callback shouldInterceptRequest() (which gives the final URL no matter how the browser got there, so you can't work around it with intermediate pages or redirects), but it's unclear how the blocked domains and their replacement URLs are generated (Tencent's server labels the above site as "evil type 205" whatever that means). I believe the app might send an "is this domain OK" message to Tencent's servers when it sees a new domain; I certainly can't find a stored block-list in the client code.

Links in PDF files are not affected, since an external PDF viewer will use the non-WeChat browser for its links. But not all phones have PDF viewers installed. (WeChat's limit for sending PDF files is 25M; larger files can be split using pdftk, e.g. pdftk book.pdf cat 1-52 output book-pages-1-52.pdf)

Cache bloat

The Android version of WeChat can build up multiple gigabytes in a directory with a 32 hex-digit name under /sdcard/tencent/MicroMsg. These files are not the chat logs---they're just cache (and I haven't found an option to clear it; Android's built-in cache-clearing option does not affect this). Some subdirectories (e.g. video) contain files present in chats, and removing them may make these files no longer accessible from the chat history, but it seems that at least the avatar, emoji, sfs and sns directories are always safe to delete without losing any history, pictures, files or "favourites".

If a Chinese friend asks you to "fix" their WeChat on an older phone with internal storage measured in megabytes (such as the ChinaMobile-branded ZTE U809, which runs a version of Android 4.2 with only 177M of usable internal storage), beware this might no longer be possible because WeChat tends to insist on updating to its latest version, which (even if installed to SD card) assumes it can write hundreds of megabytes to internal storage and crash the phone in the process. Installing a very old smaller version of the APK will not work: even last year's versions tend to just take you to the update process after first login. If you can root the device then you might be able to create symlinks to the SD card, but these cannot be created for the correct directories on non-rooted devices due to the way Android runs FUSE. The quickest solution could be to ask if they have a tablet or something to run it on instead: in one case I wasted 2½ hours trying 'hacks' only to find the person had already installed it on a tablet and didn't want it on their old phone that badly.

Length limits

If you rename your contacts, the new names are limited to 50 characters and are truncated without warning---so you can't write yourself too much of a reminder of where you met a person etc.

Comments on "official account" posts are limited to 600 characters---there is no warning until you try to post, and there is no character-count indicator, so if you run into problems there you may have to use a different editor with character count and paste in the result (unless you want to go back to 1960s/70s programming where you had to manually count out the number of characters you typed into a Hollerith constant!)

Chinese programmers might assume "one character" carries as much information as a Chinese character, so they may not realise how easy it is for English users to reach their limits. But the American developers of WhatsApp inexplicably limited group-chat titles to a mere 25 characters! (But at least that limit is made obvious as you type.)

Network effect

WeChat's dominance in China was perhaps assisted by the company's good relationship with that country's network police, with its mobile operators (SIM cards with WeChat-specific data allowances are not unheard of), and with integrated shopping and payment services and "portals" to local facilities. Outside China, WeChat tends to lack these advantages, but many mainland Chinese visitors and immigrants keep using it anyway due to their existing network of contacts, and due to the convenience of WeChat's automatic contact-exchange facilities. Scanning a QR Code seems to have become the most popular method, although a WeChat update in mid-2017 prevented the generation of QR codes while offline: if you expect patchy signal coverage, you now have to prepare by taking a screenshot of your QR code while connected. For most of 2017 it seemed these codes needed re-generating every 4 weeks, but in mid-2018 one lasted at least 12 weeks.

They therefore put up with their data being sent through Chinese servers (which, apart from anything else, can be slow when you're outside China), with the "vanishing contacts" issue, and with WeChat's limited range of font sizes (especially on high-DPI devices) and limited functionality on the desktop. At least its sound compression ratio is reasonable.

Sometimes they'll accept an alternative installed alongside WeChat for use while they're in the UK. My current recommendation is Telegram Messenger, which is run by a non-profit, can be set to larger fonts, has a good range of desktop clients, etc. But not everyone even understands what it means to install a different application. Some of the older generation I met evidently had it installed by the manufacturer, a shop, or a friend or relative, and don't know what I mean by "install something else". Additionally, some older devices (e.g. iOS 4.x) cannot run recent versions of many applications, so it would be necessary to find an old version and somehow 'side-load' it, or risk an OS replacement.

Scams

As with any form of messaging, it's probably best not to accept an `add' if you don't know who it is, especially if you actually visit an Asian country: con artists have reportedly tricked victims into going to a particular location for a "first meeting in person", only to be held to ransom by gangsters on arrival (this crime is easier to commit in small countries like Singapore). In June 2016 my WeChat ID (which I had given only to selected Chinese people I met in Cambridge) suddenly received an `add' request claiming to be from Malaysia and not giving me any clue who it was; to give them the benefit of the doubt I wrote "Apa khabar?" but received no reply and the next day eight other anonymous "Malaysians" had tried to add me. I find this highly suspicious. My ID could have been found via brute-force search, most likely of QQ numbers: I had my old QQ number linked to the account, but disabled "find by QQ ID" after this incident because I believe none of my genuine earlier contacts who had my QQ number are still likely to use it to find me.

Malware

On iOS, a pre-6.2.6 version of WeChat was infected by malware due to its developers having accidentally downloaded "XcodeGhost" instead of Xcode. Additionally, we don't know what Tencent itself does with the information WeChat can read, so it's probably best to avoid storing things like company-confidential documents on the same device, just in case.

Disclaimer: The notes on this page are provided in the hope that they are useful, but they are not official instructions and may contain mistakes. Your use of them is at your own risk.


All material © Silas S. Brown unless otherwise stated.
Android is a trademark of Google LLC.
MP3 is a trademark that was registered in Europe to Hypermedia GmbH Webcasting but I was unable to confirm its current holder.
QR Code is the UK registered trademark of Denso Corporation.
Telegram is a trademark of Telegram Messenger LLP.
WeChat is a trademark of Tencent Holdings Limited.
WhatsApp is a trademark of WhatsApp Inc.
Any other trademarks I mentioned without realising are trademarks of their respective holders.