BlueStacks is a highly rated Android emulator for PC, but unfortunately it does not offer a pre-rooted version. Looking around the net will show plenty of guides for one-click rooting BlueStacks using a tool like KingoRoot, but I have a moral opposition to recommending KingoRoot to people, for any device – it’s well-known on the rooting scene that KingoRoot has a history of swiping people’s data and sending it to shadowy servers in China.
With that said, I’m going to show you the best, safest method for rooting BlueStacks using SuperSU – it’s much more technical than a one-click root method, but your privacy will thank me in the long run. This method will also let you achieve a permanent root, which means you won’t need to re-root after rebooting BlueStacks.
Requirements:
- Save the SuperSU and BusyBox files somewhere on your computer – unpack SuperSu, but the BusyBox version I linked to is already unpacked for you.
- Now open a Windows command prompt, you can press Windows Key + R and then type ‘exe’.
- Now copypaste all of these commands into the command prompt – these commands will add registry values that prevent BlueStacks from “calling home”, turn off the BlueStacks Camera, fake your GPS position, and a couple other things that are useful to our objective:
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Agent\AppSync /f /v Enabled /t REG_DWORD /d 0
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Agent\Cloud /f /v Host /t REG_SZ /d https://127.0.0.1
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Agent\Cloud /f /v Host2 /t REG_SZ /d https://127.0.0.1
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Agent\Cloud /f /v CCPinCheckSecs /t REG_DWORD /d 0xffffffff
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Agent\Cloud /f /v SyncIntervalSecs /t REG_DWORD /d 0xffffffff
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Config /f /v OEM /t REG_SZ /d BlueStacks
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v Camera /t REG_DWORD /d 0
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v IsFrontendFirstLaunch /t REG_DWORD /d 0
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v SystemStats /t REG_DWORD /d 0
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v UsbAutoMount /t REG_DWORD /d 0
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v GpsMode /t REG_DWORD /d 0
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v GpsLatitude /t REG_SZ /d “0.0”
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v GpsLongitude /t REG_SZ /d “0.0”
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\Config /f /v OEM /t REG_SZ /d BlueStacks
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\FrameBuffer\0 /f /v GuestWidth /t REG_DWORD /d 860
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\FrameBuffer\0 /f /v GuestHeight /t REG_DWORD /d 732
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\FrameBuffer\0 /f /v WindowWidth /t REG_DWORD /d 860
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\FrameBuffer\0 /f /v WindowHeight /t REG_DWORD /d 732
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Updater /f /v ManifestURL /t REG_SZ /d “http://127.0.0.1/updates/manifest_2.3.29.6222”
- Now close the command prompt, and re-open it with administrator privileges before continuing to add these lines:
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder\1 /f /v Name /t REG_SZ /d “InputMapper”
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder\1 /f /v Path /t REG_SZ /d “C:\ProgramData\BlueStacks\UserData\InputMapper\”
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder\2 /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder\3 /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder\4 /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder\5 /f
- Additionally, I recommend setting your RAM value for BlueStacks, which will help with speed and memory issues, such as running games or RAM-intensive apps. Change the “512” to your desired RAM amount:
reg add HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guest\Android /f /v Memory /t REG_DWORD /d 512
- Okay, now we’re ready to begin the rooting process. We will need ADB working, so if you do not have ADB configured on your computer, please read “How to install ADB on Windows”.
- Once you have ADB installed, continue to type these commands into the Windows command terminal, not an ADB terminal – we’re not there yet.
sc start BstHdAndroidSvc
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” kill-server
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” start-server
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” wait-for-device
- Now we need to launch an ADB shell, so enter into Windows command prompt:
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” shell
- This should launch a Linux-style command prompt, with a $ sign preceding each line. So enter this:
/system/xbin/bstk/su
- That will unlock BlueStacks hidden SU mode, and change the $ sign to a #. So in the ADB shell, enter these commands:
mount -o remount,rw /dev/sda1 /system
mkdir /system/tmp
“C:\Program Files (x86)\Bluestacks\HD-Adb.exe” push C:/SuperSU/common/SuperUser.apk /system/tmp
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” push path_to/SuperSU/2.65/x86/su /system/tmp
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” push path_to/SuperSU/2.65/x86/supolicy /system/tmp
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” push path_to/SuperSU/2.65/x86/libsupol.so /system/tmp
“C:\Program Files (x86)\BlueStacks\HD-Adb.exe” push path_to/busybox/busybox-i686 /system/tmp/
- Now go back to the ADB command prompt and enter these commands to permanently root BlueStacks:
chown system:system /system/tmp/SuperUser.apk
chmod 664 /system/tmp/SuperUser.apk
mv /system/tmp/SuperUser.apk /system/app
chown root:root /system/tmp/su
chown root:root /system/tmp/supolicy
chown root:root /system/tmp/libsupol.so
chmod 775 /system/tmp/su
chmod 775 /system/tmp/supolicy
chmod 664 /system/tmp/libsupol.so
cp /system/tmp/su /system/xbin/daemonsu
mv /system/tmp/su /system/xbin/
mv /system/tmp/supolicy /system/xbin/
mv /system/tmp/libsupol.so /system/lib/
- And these commands will install BusyBox:
chmod 775 /system/tmp/busybox-i686
chown root:root /system/tmp/busybox-i686
cp /system/tmp/busybox-i686 /system/xbin/
mv /system/tmp/busybox-i686 /system/xbin/busybox
- Now we will modify init.sh to change the SU binary to listen as a daemon:
- Now we will remount the system as read-only:
rm /system/tmp/*
rmdir /system/tmp
mount -o remount,ro /dev/sda1 /system
mount -t ext4 /dev/block/sdd1 /mnt/prebundledapps
- And now we will clear the Dalvik cache:
find /data/dalvik-cache/ -type f -exec rm {} +
exit
exit
- Okay, that’s enough of the ADB commands. Now go back into Windows command prompt, and lets restart BlueStacks:
sc stop BstHdAndroidSvc
### wait some seconds (10?)
sc start BstHdAndroidSvc
- Confirmation of our root success should be in the form of an update prompt for SuperSU, so choose the “Normal” method. When it’s done updating, restart BlueStacks via Windows command prompt:
“C:\Program Files (x86)\BlueStacks\HD-Quit.exe”
“C:\Program Files (x86)\BlueStacks\HD-Frontend.exe” Android
So now your BlueStacks is completely, permanently rooted!
The post How to: Root Bluestacks 2 appeared first on Appuals.com.