What do I have to do to root my LG G3?
There are multiple variants of this device:
- D855 : International Version
- D850 : AT&T
- D851 : T-Mobile
- VS985 : Verizon
- LS990 : Sprint / US Cellular
To add to the How do I root my Android Device
DISCLAIMER: ROOTING YOUR PHONE WILL PROBABLY VOID YOUR WARRANTY FROM BOTH THE CARRIER AND THE MANUFACTURER. IF YOU DO NOT WISH TO ACCEPT FAULT FOR ANY ADVERSE EFFECTS OF ROOTING, THEN DO NOT READ ANY FURTHER. HERE BE DRAGONS.
For more information, and other devices see How do I root my Android device.
It works with just about all variants of the LG G3. You can see the PurpleDrake supported devices in their spreadsheet on Google Docs.
TWRP will allow you to easily apply new ROMs to your device. Which is especially helpful, since it is recommended that after you root you should disable OTAs.
You will need the USB drivers if you are on Windows:
Download PurpleDrake Scripts (currently R03)
Extract the files to a folder you can easily get to.
Follow the instructions from within PurpleDrake.
After running PurpleDrake, you will still have to install an app like SuperSU, as PurpleDrake does not include one.
WLAN Test => OTA Setting => OFF
If you install TWRP, then you must be aware, you may run in to issues if you do not disable OTAs.
Some "patches" that come down from the carrier will still notify you even if OTAs is disabled. DO NOT INSTALL OTAs IF YOU INSTALL TWRP, YOU WILL GET STUCK IN A RECOVERY LOOP.
If you get stuck in a Recovery Loop because of an OTA, do not panic, these things always have a fix.
From the TWRP recovery terminal commands enter the following:
dd if=/dev/zero of=/dev/block/platform/msm_sdcc.1/by-name/fota
PRESS ENTER, THEN TYPE
dd if=/dev/zero of=/dev/block/platform/msm_sdcc.1/by-name/misc
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?