How to recover from “E: Error parsing XML file” in TWRP

I recently ran into the above error after attempting to encrypt my Verizon Samsung SM-G900V (Galaxy S5, klte) running LOS 14.1 (that was a mistake.) Basically it means TWRP can’t successfully decrypt the filesystem.

When this happens, your best bet is to simply factory reset the device and restore a backup. To do this, simply tap Cancel at the decryption password prompt in TWRP, then factory reset via the Wipe menu as usual.

Unfortunately, this will totally negate whatever encryption you had – aside from adopted storage – but it should get return your device to a usable state.

How to install the latest emoji on Android (flashable .zip included)

Rooted or got an unlocked bootloader? You’re good to go.

NOTE: If you run CyanogenMod 13+ Nightly, you probably don’t need to do this.

Although Google has done a great job maintaining some Android features as standalone apps, fonts – which contain emoji – are still delivered via OTA updates. Android’s well documented slow (carrier device) OTA update rollout process is frustrating for those who want to use the latest emoji, ergo here’s how to do the latter.

The following process worked on a rooted Verizon Samsung Galaxy S5 (SM-G900V) running CyanogenMod 13 (Android 6.0.1) and TWRP recovery, but it should work on any Android 6.0+ device. Since the flashing process occurs entirely in the recovery environment, your device may not have to be rooted for it to work.*

This post uses and recommends the open source, very actively developed, and beautifully minimalist EmojiOne emoji, but can probably be used for other emoji sets too.

  1. Download the original flashable .zip created by the EmojiOne developers. Although it’s outdated, it can be reused for newer emoji by updating its contents, which is done in subsequent steps.
  2. Download the latest EmojiOne .ttf  file (you can also download the .ttf from any other emoji set if you’d rather use that instead)
  3. Unzip the file to \EmojiOneAndroid.
  4. Replace the emojione-android.ttf file at \EmojiOneAndroid\system\fonts with the one downloaded in Step 2.
  5. Re-zip \EmojiOneAndroid.
  6. Flash the above zip using your preferred method (Flashfire, TWRP, etc.). TWRP instructions are found in Phase 7 here.
  7. Reboot your device.

And that’s it! You should know have the custom emoji of your choosing installed to your device.

For convenience, I’ve uploaded a flashable .zip containing the latest EmojiOne .ttf here. I’ll try to keep it updated as new versions (RSS feed) come out.

Want these emoji on Windows? Instructions here.

*An alternative method of updating emoji is to manually replace the corresponding system file. However, this requires both root access and manually setting the correct permissions for the new .ttf file, and the device still has to be rebooted afterwards. Flashing a .zip as described here is far simpler and there’s less that can go wrong.