Related
New universal method of rooted for the Optimus 2x
After much programming and experimenting with another great part, already I can deliver my latest work.
So far have only made for Linux and Mac. (there are methods to not be as done in CMD)
Apparently it seems very simple, but it cheats, it is quite complex, since I've programmed detection of errors and possible solutions to the problems of communication.
The program is smart, detects the operating system that we are using, Linux or iOS, and detects the version of ROM installed to determine installation done.
Also installs the CWM Recovery, and also knows which install depending on the GB ROM or ICS, all automatic, without having to think that option used.
Before you root it will ask you if the CWM Recovery is installed and if it is not you can do it at that time.
The method used is not new, I already used it in earlier versions of GB, the difference with the other methods is that you don't have to copy anything to the SD and things of these, simple and clean installation.
Well I hope that you have Linux or a Mac can root without having to boot the "tedious" Windows.
CHANGELOG
V-0.5
-Implemented detecting permissions
-Implemented detection system 32/64b
-Fixed bug, was not working in Ubuntu 11.04 and higher
V-0.4
-Detection of new possible connection failures.
-Detection of errors in routines Android
-Optimized routines
V-0.3
-Fixed bug of execution, did not work on some current versions of Ubuntu and derivatives
-New start menu.
-New header
V-0.2
-Re-raise with correction error in English language, it only pulled in Spanish
-Includes English language
-Changing the graphic appearance
V-0.1
-Only in Spanish
Click to expand...
Click to collapse
DOWNLOAD
Toolkit_ICS-Root_Stock-v-0.5_LINUX-MAC_by_Homero.rar - 13.40 MB
Thank's Man...and have a nice year 2013!!!...
Nice, it should became sticked.
Also... your program must be also noob-proof
Great work, homero! Thank you.
Sent from my LG-P990 using xda app-developers app
Homero again back with a bang...you're hulk of lg optimus forum..you rock bro
Finally some Linux love.... :thumbup:
Sent from my LG-P990 using xda app-developers app
Thanks homero
Enviado desde mi O2X
I have committed an error, and the English version, and does not run.
You can download the new corrected version or edit and modify.
Edit the root file and look for this line:
Code:
if [ "$ANSWER" = 1 ]; then
tools/es.sh
elif [ "$ANSWER" = 2 ]; then
tools/es.sh
elif [ "$ANSWER" = "x" ] || [ "$ANSWER" = "X" ]; then
Changing this:
Code:
elif [ "$ANSWER" = 2 ]; then
tools/es.sh
why another:
Code:
elif [ "$ANSWER" = 2 ]; then
tools/en.sh
Save and ready, already operates the English version
Homero2 said:
I have committed an error, and the English version, and does not run.
You can download the new corrected version or edit and modify.
Edit the root file and look for this line:
Code:
if [ "$ANSWER" = 1 ]; then
tools/es.sh
elif [ "$ANSWER" = 2 ]; then
tools/es.sh
elif [ "$ANSWER" = "x" ] || [ "$ANSWER" = "X" ]; then
Changing this:
Code:
elif [ "$ANSWER" = 2 ]; then
tools/es.sh
why another:
Code:
elif [ "$ANSWER" = 2 ]; then
tools/en.sh
Save and ready, already operates the English version
Click to expand...
Click to collapse
Beware of #!/bin/sh ... read -n command is bash command, and it does not work well in /bin/sh ...
Confirmed on NetRunner (kubuntu 12.10 ).
You should use #!/bin/bash. That applies to all *.sh scripts.
asmerito said:
Beware of #!/bin/sh ... read -n command is bash command, and it does not work well in /bin/sh ...
Confirmed on NetRunner (kubuntu 12.10 ).
You should use #!/bin/bash. That applies to all *.sh scripts.
Click to expand...
Click to collapse
OK, that is the answer that was waiting, since neither worked in Ubuntu 12.04
EDIT:
Re-raise corrected v-0.3
Though your tool says that flashing the recovery worked successful, I can't boot into recovery. When pushing vol- and power I'm just stuck at the pink LG logo (it's in a boot loop while holding vol- and power). Since the system is not rooted, yet, I also cannot boot into recovery with the CWM app.
thorstenhirsch said:
Though your tool says that flashing the recovery worked successful, I can't boot into recovery. When pushing vol- and power I'm just stuck at the pink LG logo (it's in a boot loop while holding vol- and power). Since the system is not rooted, yet, I also cannot boot into recovery with the CWM app.
Click to expand...
Click to collapse
Don't worry in excess, can be retrieved very easily, but before answer to these questions.
Android version?
did CWM previously installed?.
Terminal type? (P990, P990, etc.)
on slackware 14.0, expanded in /opt:
two patches applied;
files are executables with right permissions;
dir 'tools' is accessible;
lg2x is connected via USB (on, off, MTP, PC Suite, without battery and vol -, ...?)
but same result
Terminal: P990 (EU)
ROM: ICS stock
Previous ver: CM 7.2 stable
Previous CWM: 5.0.2
Homero2 said:
Android version?
did CWM previously installed?.
Terminal type? (P990, P990, etc.)
Click to expand...
Click to collapse
Android 4.0.4 (official V30A)
CWM - well, under GB layout I could install it (I was on CWM5 first and later switched to CWM6), but this was my first try on ICS layout
Terminal type - you mean the shell? I'm using Ubuntu 12.10, so /bin/sh did not work and I replaced all /bin/sh with /bin/bash, that means I was running bash when I "bricked" my phone.
kanzy said:
on slackware 14.0, expanded in /opt:
two patches applied;
files are executables with right permissions;
dir 'tools' is accessible;
lg2x is connected via USB (on, off, MTP, PC Suite, without battery and vol -, ...?)
but same result
Terminal: P990 (EU)
ROM: ICS stock
Previous ver: CM 7.2 stable
Previous CWM: 5.0.2
Click to expand...
Click to collapse
Is about understands that this method of single rooted is for Stock ROM versions.
Clarified the issue, I see errors jump to run ADB.
Try with the latest version that I uploaded, the V-0.4
thorstenhirsch said:
Android 4.0.4 (official V30A)
CWM - well, under GB layout I could install it (I was on CWM5 first and later switched to CWM6), but this was my first try on ICS layout
Terminal type - you mean the shell? I'm using Ubuntu 12.10, so /bin/sh did not work and I replaced all /bin/sh with /bin/bash, that means I was running bash when I "bricked" my phone.
Click to expand...
Click to collapse
Not be what could happen...
Doing tests I found that if you are in Recovery, and the SYSTEM partition is not mounted, the program cannot determine partition type should be used.
That error is already fixed in the V-0.4.
It can reflash the Recovery with one of the many versions that we have in the Forum, one in Flash only recovery or All in one.
I say this because it is the only thing that could have happened, since the rooted is not harmful, only copy two files in the system.
Using V-0.4, and it does not work...
Homero2 said:
Is about understands that this method of single rooted is for Stock ROM versions.
Clarified the issue, I see errors jump to run ADB.
Try with the latest version that I uploaded, the V-0.4
Not be what could happen...
Doing tests I found that if you are in Recovery, and the SYSTEM partition is not mounted, the program cannot determine partition type should be used.
That error is already fixed in the V-0.4.
It can reflash the Recovery with one of the many versions that we have in the Forum, one in Flash only recovery or All in one.
I say this because it is the only thing that could have happened, since the rooted is not harmful, only copy two files in the system.
Click to expand...
Click to collapse
Same problem as on slackware, got booloop after flashing recovery. Cannot enter recovery
After this step:
INSTRUCTIONS
CWM will be installed for version ICS V-4.0.4 of Android
Nvflash started
rcm version 0X20001_____________________________________________________________
System Information:
chip name: unknownh Recovery CWM
chip id: 0x20 major: 1 minor: 4
chip sku: 0xf
chip uid: 0x045070c04120b4d7
macrovision: disabled
hdcp: enabled
sbk burned: false
dk burned: false
boot device: emmc
operating mode: 3
device config strap: 0
device config fuse: 17
sdram config strap: 0
downloading bootloader -- load address: 0x108000 entry point: 0x108000
sending file: tools/fastboot.bin
/ 1027184/1027184 bytes sent
tools/fastboot.bin sent successfully
waiting for bootloader to initialize
bootloader downloaded successfully
sending file: tools/recovery_cwm-6_ics_opti.img
\ 7145472/7145472 bytes sent
tools/recovery_cwm-6_ics_opti.img sent successfully
everything went wrong, and my stock ICS got bootloop.
Using Kubuntu 12.10, stock ICS and V-0.4 of your tool.
Thank you mate! Gonna share it like a bee
asmerito said:
Same problem as on slackware, got booloop after flashing recovery. Cannot enter recovery
...
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=921169
Fixed bug, now works in Ubuntu 11.04, 11.10, 12.04 and 12.10
An error has been detected by Jonki, Thank you!!
Homero2 said:
Fixed bug, now works in Ubuntu 11.04, 11.10, 12.04 and 12.10
An error has been detected by Jonki, Thank you!!
Click to expand...
Click to collapse
What was the problem?
My htc One is going to need to go in for repair, and i have many images that i dont want to lose, but i know that it is very likely that a factory reset is very likely. Can someone tell what is the easiest and most effective way of saving/storing my wallpapers/photos from the phone back to the phone when it comes back from repair?
Any advice would be very much appreciated, as i am a complete novice when it comes to this sort of thing.
dibdin said:
My htc One is going to need to go in for repair, and i have many images that i dont want to lose, but i know that it is very likely that a factory reset is very likely. Can someone tell what is the easiest and most effective way of saving/storing my wallpapers/photos from the phone back to the phone when it comes back from repair?
Any advice would be very much appreciated, as i am a complete novice when it comes to this sort of thing.
Click to expand...
Click to collapse
What's broken that needs repair?
dibdin said:
My htc One is going to need to go in for repair, and i have many images that i dont want to lose, but i know that it is very likely that a factory reset is very likely. Can someone tell what is the easiest and most effective way of saving/storing my wallpapers/photos from the phone back to the phone when it comes back from repair?
Any advice would be very much appreciated, as i am a complete novice when it comes to this sort of thing.
Click to expand...
Click to collapse
Drag and drop to a folder on your computer, then when the phone comes back drag and drop back into the same place.
dibdin said:
My htc One is going to need to go in for repair, and i have many images that i dont want to lose, but i know that it is very likely that a factory reset is very likely. Can someone tell what is the easiest and most effective way of saving/storing my wallpapers/photos from the phone back to the phone when it comes back from repair?
Any advice would be very much appreciated, as i am a complete novice when it comes to this sort of thing.
Click to expand...
Click to collapse
Here is my little tool to save the whole SDCard, it should be able to do the work... simply follow the instructions:
http://ul.to/0skv8966
Source code, if you think it's a virus:
Code:
::===========================================
::This is Version 1.0 of Android SDCard to PC
::===========================================
@echo off
title Android SDCard To PC
:startProcedure
echo ===============================================================================
echo Willkommen bei Android SDCard To PC
echo Instruktionen: -Shut down your phone into recovery
echo -This tool is only tested on CWM and TWRP, but it should work
echo for all recoveries
echo -It's impossible that this tool damages your phone! But I'm not
echo responsible for any kind if **** that happens
echo -NOW, mount the /data partition from your recovery!
echo ===============================================================================
echo\
cd resources
dir
echo\
echo ===============================================================================
echo Now if you want to continue, press: J
echo If you want to leave, press: N
echo ===============================================================================
set /p pfadUserChoice=
if %pfadUserChoice% == J goto fileCopying
if %pfadUserChoice% == N goto beenden
goto beenden
:beenden
echo Closing programme:
pause
goto ende
:fileCopying
echo ===============================================================================
echo Write here your directory where you want to store the backups
echo (z.B. D:\Users\Name\BackUps )
echo ===============================================================================
set /p computerDirectory=
set backUpDirectoryFinal=/data/media/0
echo Data will be copied if you accept the next request:
echo Von: %backUpDirectoryFinal%
echo Zu: %computerDirectory%
pause
adb remount
adb pull %backUpDirectoryFinal% %computerDirectory%
echo If there were no errors, the process should have worked fine
echo Killing!
pause
:ende
LibertyMarine said:
Here is my little tool to save the whole SDCard, it should be able to do the work... simply follow the instructions:
http://ul.to/0skv8966
Source code, if you think it's a virus:
Code:
::===========================================
::This is Version 1.0 of Android SDCard to PC
::===========================================
@echo off
title Android SDCard To PC
:startProcedure
echo ===============================================================================
echo Willkommen bei Android SDCard To PC
echo Instruktionen: -Shut down your phone into recovery
echo -This tool is only tested on CWM and TWRP, but it should work
echo for all recoveries
echo -It's impossible that this tool damages your phone! But I'm not
echo responsible for any kind if **** that happens
echo -NOW, mount the /data partition from your recovery!
echo ===============================================================================
echo\
cd resources
dir
echo\
echo ===============================================================================
echo Now if you want to continue, press: J
echo If you want to leave, press: N
echo ===============================================================================
set /p pfadUserChoice=
if %pfadUserChoice% == J goto fileCopying
if %pfadUserChoice% == N goto beenden
goto beenden
:beenden
echo Closing programme:
pause
goto ende
:fileCopying
echo ===============================================================================
echo Write here your directory where you want to store the backups
echo (z.B. D:\Users\Name\BackUps )
echo ===============================================================================
set /p computerDirectory=
set backUpDirectoryFinal=/data/media/0
echo Data will be copied if you accept the next request:
echo Von: %backUpDirectoryFinal%
echo Zu: %computerDirectory%
pause
adb remount
adb pull %backUpDirectoryFinal% %computerDirectory%
echo If there were no errors, the process should have worked fine
echo Killing!
pause
:ende
Click to expand...
Click to collapse
Nice idea :good:
Just make sure he's on 4.2.2+ ROM, otherwise if it's still 4.1.2 then it will be in /data/media
LibertyMarine said:
Here is my little tool to save the whole SDCard, it should be able to do the work... simply follow the instructions:
http://ul.to/0skv8966
Source code, if you think it's a virus:
Code:
::===========================================
::This is Version 1.0 of Android SDCard to PC
::===========================================
@echo off
title Android SDCard To PC
:startProcedure
echo ===============================================================================
echo Willkommen bei Android SDCard To PC
echo Instruktionen: -Shut down your phone into recovery
echo -This tool is only tested on CWM and TWRP, but it should work
echo for all recoveries
echo -It's impossible that this tool damages your phone! But I'm not
echo responsible for any kind if **** that happens
echo -NOW, mount the /data partition from your recovery!
echo ===============================================================================
echo\
cd resources
dir
echo\
echo ===============================================================================
echo Now if you want to continue, press: J
echo If you want to leave, press: N
echo ===============================================================================
set /p pfadUserChoice=
if %pfadUserChoice% == J goto fileCopying
if %pfadUserChoice% == N goto beenden
goto beenden
:beenden
echo Closing programme:
pause
goto ende
:fileCopying
echo ===============================================================================
echo Write here your directory where you want to store the backups
echo (z.B. D:\Users\Name\BackUps )
echo ===============================================================================
set /p computerDirectory=
set backUpDirectoryFinal=/data/media/0
echo Data will be copied if you accept the next request:
echo Von: %backUpDirectoryFinal%
echo Zu: %computerDirectory%
pause
adb remount
adb pull %backUpDirectoryFinal% %computerDirectory%
echo If there were no errors, the process should have worked fine
echo Killing!
pause
:ende
Click to expand...
Click to collapse
Liberty - I've never heard of this, but it seems to use adb pull which was going to be one of my suggestions.
is it a ui for these commands?
--
ALSO, dibdin, make sure you have Debugging enabled in Dev Options in settings, and definitely mtp enabled and Fastcharge disabled (if your kernel allows it.)
---------- Post added at 11:16 AM ---------- Previous post was at 10:57 AM ----------
dibdin said:
My htc One is going to need to go in for repair, and i have many images that i dont want to lose, but i know that it is very likely that a factory reset is very likely. Can someone tell what is the easiest and most effective way of saving/storing my wallpapers/photos from the phone back to the phone when it comes back from repair?
Any advice would be very much appreciated, as i am a complete novice when it comes to this sort of thing.
Click to expand...
Click to collapse
if its a cracked digitizer/glass but touch still responds and you can see what youre doing, then you can upload any of them to online storage like Google Drive, Box, Drop Box, etc. the list goes on.
in fact g+ has an auto update feature, if you have used it, it may have already backed up your images..
as for backing up apps: if youre rooted then Titanium Backup (should be "duh!" but in case you didn't know) available on the playstore
or if youre not rooted, theres a relatively new app from Clockwork Mod entitled Helium (also on the playstore) that requires a pc, but not root, and worked great for me since I was afraid to root my One (afraid to brick it like I had with my sgs3 and had to send to jtag (a near 100$ learning experience )
both have premium versions, but if youre into dev or flashing different roms, you'll want to look into either one.
nkk71 said:
Nice idea :good:
Just make sure he's on 4.2.2+ ROM, otherwise if it's still 4.1.2 then it will be in /data/media
Click to expand...
Click to collapse
Oh, okay didn't know that.. thanks, i am gonna update the program so that this guy won't have any troubles if he has Android 4.1.. Do you know if it's possible to determine the Android Version by using ADB and making a CMD check, so the input variable is set automatically? I mean that it changes the directory to /data/media
---------- Post added at 10:26 PM ---------- Previous post was at 10:22 PM ----------
DaringDomino3s said:
Liberty - I've never heard of this, but it seems to use adb pull which was going to be one of my suggestions.
is it a ui for these commands?
Click to expand...
Click to collapse
Yeah.. but it might be easier for him to use a tool instead of working with adb commands.. no there isn't a UI, it's simply a guide.. it does all the work for you... But it simply is a stupid tool.. it's so easy.. but it helps and if you make backups more often, you can let this tool do the work
LibertyMarine said:
Oh, okay didn't know that.. thanks, i am gonna update the program so that this guy won't have any troubles if he has Android 4.1.. Do you know if it's possible to determine the Android Version by using ADB and making a CMD check, so the input variable is set automatically? I mean that it changes the directory to /data/media
---------- Post added at 10:26 PM ---------- Previous post was at 10:22 PM ----------
Yeah.. but it might be easier for him to use a tool instead of working with adb commands.. no there isn't a UI, it's simply a guide.. it does all the work for you... But it simply is a stupid tool.. it's so easy.. but it helps and if you make backups more often, you can let this tool do the work
Click to expand...
Click to collapse
How about using /sdcard, shouldnt that symlink to the correct one?
I'm not thinking straight right now so I better get back 2 u tomorrow...
Sent from my HTC One using Tapatalk
Edit: it's not a stupid tool !
nkk71 said:
How about using /sdcard, shouldnt that symlink to the correct one?
I'm not thinking straight right now so I better get back 2 u tomorrow...
Sent from my HTC One using Tapatalk
Click to expand...
Click to collapse
I once had mounting issues on my recovery.. but yeah, I'll try this option once my HTC One is repaired.. *hoping they'll do it on warranty*
Ok, that's very nice
The following Windows batch file will backup and remove the Sprint installed bloatware, various spyware/logging/etc apps that waste battery, Google apps such as Books and Magazines that can be installed form the Play Store, non-EFIGS language packs, the boot sound, and the Virgin Mobile and Boost Mobile startup animations.
The batch file checks each file for a backup before removing it so it should be safe, but the normal disclaimers about me taking no responsibility if you screw up your phone apply.
Copy and paste the script below into notepad on a Windows computer, save it as debloat.bat in the same directory as adb.exe, and double click on it to run. Then just follow the instructions on the screen.
Code:
@ECHO OFF
ECHO Finding device . . .
ECHO.
adb kill-server
adb devices
ECHO.
SET /P ANSWER=Is your device shown above (Y/N)?
IF /i "%ANSWER%"=="y" GOTO :yes1
IF /i "%ANSWER%"=="yes" GOTO :yes1
GOTO :no
:yes1
ECHO.
ECHO Backing up user apps . . .
adb pull /data/app/com.ebay.mobile-1.apk
adb pull /data/app/com.lookout-1.apk
adb pull /data/app/com.mobitv.client.sprinttvng-1.apk
adb pull /data/app/com.nascar.nascarmobile-1.apk
adb pull /data/app/com.nbadigital.gametimelite-1.apk
adb pull /data/app/com.nextradioapp.nextradio-1.apk
adb pull /data/app/com.pinsight.eureka.offers-1.apk
adb pull /data/app/com.sprint.android.musicplus2033-1.apk
adb pull /data/app/com.sprint.w.v8-1.apk
adb pull /data/app/com.telenav.app.android.scout_us-1.apk
adb pull /data/app/com.wipit.sprintmoneyexpress-1.apk
adb pull /data/app/msgplus.jibe.sca-1.apk
ECHO.
ECHO If you don't see any errors above, APKs have been backed up to
ECHO %CD%
ECHO.
SET /P ANSWER=Uninstall user apps (Y/N)?
IF /i "%ANSWER%"=="y" GOTO :yes2
IF /i "%ANSWER%"=="yes" GOTO :yes2
GOTO :no
:yes2
ECHO.
ECHO Uninstalling user apps . . .
ECHO.
if exist com.ebay.mobile-1.apk ( adb uninstall com.ebay.mobile ) else ( ECHO com.ebay.mobile-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.lookout-1.apk ( adb uninstall com.lookout ) else ( ECHO com.lookout-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.mobitv.client.sprinttvng-1.apk ( adb uninstall com.mobitv.client.sprinttvng ) else ( ECHO com.mobitv.client.sprinttvng-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.nascar.nascarmobile-1.apk ( adb uninstall com.nascar.nascarmobile ) else ( ECHO com.nascar.nascarmobile-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.nbadigital.gametimelite-1.apk ( adb uninstall com.nbadigital.gametimelite ) else ( ECHO com.nbadigital.gametimelite-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.nextradioapp.nextradio-1.apk ( adb uninstall com.nextradioapp.nextradio ) else ( ECHO com.nextradioapp.nextradio-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.pinsight.eureka.offers-1.apk ( adb uninstall com.pinsight.eureka.offers ) else ( ECHO com.pinsight.eureka.offers-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.sprint.android.musicplus2033-1.apk ( adb uninstall com.sprint.android.musicplus2033 ) else ( ECHO com.sprint.android.musicplus2033-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.sprint.w.v8-1.apk ( adb uninstall com.sprint.w.v8 ) else ( ECHO com.sprint.w.v8-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.telenav.app.android.scout_us-1.apk ( adb uninstall com.telenav.app.android.scout_us ) else ( ECHO com.telenav.app.android.scout_us-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.wipit.sprintmoneyexpress-1.apk ( adb uninstall com.wipit.sprintmoneyexpress ) else ( ECHO com.wipit.sprintmoneyexpress-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist msgplus.jibe.sca-1.apk ( adb uninstall msgplus.jibe.sca ) else ( ECHO msgplus.jibe.sca-1.apk BACKUP NOT FOUND, SKIPPING . . . )
ECHO.
ECHO Uninstall of user apps complete.
SET /P ANSWER=Press ENTER to reboot into recovery . . .
ECHO.
ECHO Rebooting into recovery . . .
ECHO.
adb reboot recovery
SET /P v="Press ENTER when the phone has rebooted into recovery . . ."
ECHO.
adb root
adb remount
ECHO.
ECHO If you do not see "remount succeeded" above, use your recovery's GUI to mount
ECHO the System partition. If you see "remount succeeded" or have mounted /system/
SET /P v="manually, press ENTER . . ."
ECHO.
ECHO Backing up files . . .
adb pull /system/app/18892_SPC_HTC_Mobile_Guide_M8WHL.apk
adb pull /system/app/Books.apk
adb pull /system/app/HtcResetNotify.apk
adb pull /system/app/KidMode-google.apk
adb pull /system/app/Magazines.apk
adb pull /system/app/QXDM2SD.apk
adb pull /system/app/Smith.apk
adb pull /system/app/TetheringGuard.apk
adb pull /system/app/UDove.apk
adb pull /system/priv-app/CheckinProvider.apk
adb pull /system/priv-app/DemoFLOPackageInstaller.apk
adb pull /system/priv-app/GoogleFeedback.apk
adb pull /system/priv-app/ID.apk
adb pull /system/priv-app/LMIRescue.apk
adb pull /system/priv-app/LMIRescueSecurity.apk
adb pull /system/priv-app/MyBreeze.apk
adb pull /system/priv-app/SprintInstaller.apk
adb pull /system/priv-app/Stock.apk
adb pull /system/priv-app/T6-Lumen-1.1.1.42998.apk
adb pull /system/priv-app/Transfer.apk
adb pull /system/app/CIMEXT9.apk
adb pull /system/app/IMEMurasuIndic.apk
adb pull /system/app/IMEMurasuViet.apk
adb pull /system/app/IMEXT9Arabic.apk
adb pull /system/app/IMEXT9Armenian.apk
adb pull /system/app/IMEXT9BahasaIndonesia.apk
adb pull /system/app/IMEXT9BahasaMalaysia.apk
adb pull /system/app/IMEXT9Bulgaria.apk
adb pull /system/app/IMEXT9Catalan.apk
adb pull /system/app/IMEXT9Croatian.apk
adb pull /system/app/IMEXT9Czech.apk
adb pull /system/app/IMEXT9Danish.apk
adb pull /system/app/IMEXT9Dutch.apk
adb pull /system/app/IMEXT9Estonian.apk
adb pull /system/app/IMEXT9Farsi.apk
adb pull /system/app/IMEXT9Finnish.apk
adb pull /system/app/IMEXT9Greek.apk
adb pull /system/app/IMEXT9Hebrew.apk
adb pull /system/app/IMEXT9Hungarian.apk
adb pull /system/app/IMEXT9Kazakh.apk
adb pull /system/app/IMEXT9Latvian.apk
adb pull /system/app/IMEXT9Lithuanian.apk
adb pull /system/app/IMEXT9Norwegian.apk
adb pull /system/app/IMEXT9Polish.apk
adb pull /system/app/IMEXT9Portuguese.apk
adb pull /system/app/IMEXT9Romanian.apk
adb pull /system/app/IMEXT9Russian.apk
adb pull /system/app/IMEXT9Serbian.apk
adb pull /system/app/IMEXT9Slovak.apk
adb pull /system/app/IMEXT9Slovenian.apk
adb pull /system/app/IMEXT9Swedish.apk
adb pull /system/app/IMEXT9Thai.apk
adb pull /system/app/IMEXT9Turkish.apk
adb pull /system/app/IMEXT9Ukrainian.apk
adb pull /system/customize/resource/HTC_Sense5_Boot.mp3
adb pull /system/customize/resource/BM_startup_animation.zip
adb pull /system/customize/resource/VM_startup_animation.zip
ECHO.
ECHO If you don't see any errors above, APKs have been backed up to
ECHO %CD%
ECHO.
SET /P ANSWER=Delete files from /system/ (Y/N)?
IF /i "%ANSWER%"=="y" GOTO :yes3
IF /i "%ANSWER%"=="yes" GOTO :yes3
GOTO :no
:yes3
ECHO.
if exist 18892_SPC_HTC_Mobile_Guide_M8WHL.apk ( adb shell "rm /system/app/18892_SPC_HTC_Mobile_Guide_M8WHL.apk" ) else ( ECHO 18892_SPC_HTC_Mobile_Guide_M8WHL.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Books.apk ( adb shell "rm /system/app/Books.apk" ) else ( ECHO Books.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HtcResetNotify.apk ( adb shell "rm /system/app/HtcResetNotify.apk" ) else ( ECHO HtcResetNotify.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist KidMode-google.apk ( adb shell "rm /system/app/KidMode-google.apk" ) else ( ECHO KidMode-google.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Magazines.apk ( adb shell "rm /system/app/Magazines.apk" ) else ( ECHO Magazines.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist QXDM2SD.apk ( adb shell "rm /system/app/QXDM2SD.apk" ) else ( ECHO QXDM2SD.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Smith.apk ( adb shell "rm /system/app/Smith.apk" ) else ( ECHO Smith.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist TetheringGuard.apk ( adb shell "rm /system/app/TetheringGuard.apk" ) else ( ECHO TetheringGuard.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist UDove.apk ( adb shell "rm /system/app/UDove.apk" ) else ( ECHO UDove.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist CheckinProvider.apk ( adb shell "rm /system/priv-app/CheckinProvider.apk" ) else ( ECHO CheckinProvider.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist DemoFLOPackageInstaller.apk ( adb shell "rm /system/priv-app/DemoFLOPackageInstaller.apk" ) else ( ECHO DemoFLOPackageInstaller.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist GoogleFeedback.apk ( adb shell "rm /system/priv-app/GoogleFeedback.apk" ) else ( ECHO GoogleFeedback.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist ID.apk ( adb shell "rm /system/priv-app/ID.apk" ) else ( ECHO ID.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist LMIRescue.apk ( adb shell "rm /system/priv-app/LMIRescue.apk" ) else ( ECHO LMIRescue.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist LMIRescueSecurity.apk ( adb shell "rm /system/priv-app/LMIRescueSecurity.apk" ) else ( ECHO LMIRescueSecurity.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist MyBreeze.apk ( adb shell "rm /system/priv-app/MyBreeze.apk" ) else ( ECHO MyBreeze.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist SprintInstaller.apk ( adb shell "rm /system/priv-app/SprintInstaller.apk" ) else ( ECHO SprintInstaller.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Stock.apk ( adb shell "rm /system/priv-app/Stock.apk" ) else ( ECHO Stock.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist T6-Lumen-1.1.1.42998.apk ( adb shell "rm /system/priv-app/T6-Lumen-1.1.1.42998.apk" ) else ( ECHO T6-Lumen-1.1.1.42998.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Transfer.apk ( adb shell "rm /system/priv-app/Transfer.apk" ) else ( ECHO Transfer.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist CIMEXT9.apk ( adb shell "rm /system/app/CIMEXT9.apk" ) else ( ECHO CIMEXT9.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEMurasuIndic.apk ( adb shell "rm /system/app/IMEMurasuIndic.apk" ) else ( ECHO IMEMurasuIndic.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEMurasuViet.apk ( adb shell "rm /system/app/IMEMurasuViet.apk" ) else ( ECHO IMEMurasuViet.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Arabic.apk ( adb shell "rm /system/app/IMEXT9Arabic.apk" ) else ( ECHO IMEXT9Arabic.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Armenian.apk ( adb shell "rm /system/app/IMEXT9Armenian.apk" ) else ( ECHO IMEXT9Armenian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9BahasaIndonesia.apk ( adb shell "rm /system/app/IMEXT9BahasaIndonesia.apk" ) else ( ECHO IMEXT9BahasaIndonesia.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9BahasaMalaysia.apk ( adb shell "rm /system/app/IMEXT9BahasaMalaysia.apk" ) else ( ECHO IMEXT9BahasaMalaysia.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Bulgaria.apk ( adb shell "rm /system/app/IMEXT9Bulgaria.apk" ) else ( ECHO IMEXT9Bulgaria.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Catalan.apk ( adb shell "rm /system/app/IMEXT9Catalan.apk" ) else ( ECHO IMEXT9Catalan.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Croatian.apk ( adb shell "rm /system/app/IMEXT9Croatian.apk" ) else ( ECHO IMEXT9Croatian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Czech.apk ( adb shell "rm /system/app/IMEXT9Czech.apk" ) else ( ECHO IMEXT9Czech.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Danish.apk ( adb shell "rm /system/app/IMEXT9Danish.apk" ) else ( ECHO IMEXT9Danish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Dutch.apk ( adb shell "rm /system/app/IMEXT9Dutch.apk" ) else ( ECHO IMEXT9Dutch.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Estonian.apk ( adb shell "rm /system/app/IMEXT9Estonian.apk" ) else ( ECHO IMEXT9Estonian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Farsi.apk ( adb shell "rm /system/app/IMEXT9Farsi.apk" ) else ( ECHO IMEXT9Farsi.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Finnish.apk ( adb shell "rm /system/app/IMEXT9Finnish.apk" ) else ( ECHO IMEXT9Finnish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Greek.apk ( adb shell "rm /system/app/IMEXT9Greek.apk" ) else ( ECHO IMEXT9Greek.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Hebrew.apk ( adb shell "rm /system/app/IMEXT9Hebrew.apk" ) else ( ECHO IMEXT9Hebrew.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Hungarian.apk ( adb shell "rm /system/app/IMEXT9Hungarian.apk" ) else ( ECHO IMEXT9Hungarian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Kazakh.apk ( adb shell "rm /system/app/IMEXT9Kazakh.apk" ) else ( ECHO IMEXT9Kazakh.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Latvian.apk ( adb shell "rm /system/app/IMEXT9Latvian.apk" ) else ( ECHO IMEXT9Latvian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Lithuanian.apk ( adb shell "rm /system/app/IMEXT9Lithuanian.apk" ) else ( ECHO IMEXT9Lithuanian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Norwegian.apk ( adb shell "rm /system/app/IMEXT9Norwegian.apk" ) else ( ECHO IMEXT9Norwegian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Polish.apk ( adb shell "rm /system/app/IMEXT9Polish.apk" ) else ( ECHO IMEXT9Polish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Portuguese.apk ( adb shell "rm /system/app/IMEXT9Portuguese.apk" ) else ( ECHO IMEXT9Portuguese.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Romanian.apk ( adb shell "rm /system/app/IMEXT9Romanian.apk" ) else ( ECHO IMEXT9Romanian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Russian.apk ( adb shell "rm /system/app/IMEXT9Russian.apk" ) else ( ECHO IMEXT9Russian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Serbian.apk ( adb shell "rm /system/app/IMEXT9Serbian.apk" ) else ( ECHO IMEXT9Serbian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Slovak.apk ( adb shell "rm /system/app/IMEXT9Slovak.apk" ) else ( ECHO IMEXT9Slovak.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Slovenian.apk ( adb shell "rm /system/app/IMEXT9Slovenian.apk" ) else ( ECHO IMEXT9Slovenian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Swedish.apk ( adb shell "rm /system/app/IMEXT9Swedish.apk" ) else ( ECHO IMEXT9Swedish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Thai.apk ( adb shell "rm /system/app/IMEXT9Thai.apk" ) else ( ECHO IMEXT9Thai.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Turkish.apk ( adb shell "rm /system/app/IMEXT9Turkish.apk" ) else ( ECHO IMEXT9Turkish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Ukrainian.apk ( adb shell "rm /system/app/IMEXT9Ukrainian.apk" ) else ( ECHO IMEXT9Ukrainian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HTC_Sense5_Boot.mp3 ( adb shell "rm /system/customize/resource/HTC_Sense5_Boot.mp3" ) else ( ECHO HTC_Sense5_Boot.mp3 BACKUP NOT FOUND, SKIPPING . . . )
if exist BM_startup_animation.zip ( adb shell "rm /system/customize/resource/BM_startup_animation.zip" ) else ( ECHO BM_startup_animation.zip BACKUP NOT FOUND, SKIPPING . . . )
if exist VM_startup_animation.zip ( adb shell "rm /system/customize/resource/VM_startup_animation.zip" ) else ( ECHO VM_startup_animation.zip BACKUP NOT FOUND, SKIPPING . . . )
ECHO.
ECHO Deletion of system apps completed.
SET /P ANSWER=Press ENTER to reboot . . .
ECHO.
ECHO Rebooting . . .
adb reboot
ECHO.
ECHO Bloat apps have been removed and backed up to
ECHO %CD%
ECHO.
GOTO :end
:no
ECHO.
ECHO Cancelling . . .
ECHO.
:end
PAUSE
EXIT
If you wish to reinstall any of the removed programs, there is a rebloatM8.bat file in the attached zip file below that will reinstall any backed up files removed by this script to your phone. Just move any files you don't want restored to another directory and run the script.
ahecht said:
The following Windows batch file will backup and remove the Sprint installed bloatware, various spyware/logging/etc apps that waste battery, non-EFIGS language packs, the boot sound, and the Virgin Mobile and Boost Mobile startup animations.
The batch file checks each file for a backup before removing it so it should be safe, but the normal disclaimers about me taking no responsibility if you screw up your phone apply.
Copy and paste the script below into notepad on a Windows computer, save it as debloat.bat in the same directory as adb.exe, and double click on it to run. Then just follow the instructions on the screen.
Code:
@ECHO OFF
ECHO Finding device . . .
ECHO.
adb kill-server
adb devices
ECHO.
SET /P ANSWER=Is your device shown above (Y/N)?
IF /i "%ANSWER%"=="y" GOTO :yes1
IF /i "%ANSWER%"=="yes" GOTO :yes1
GOTO :no
:yes1
ECHO.
ECHO Backing up user apps . . .
adb pull /data/app/com.ebay.mobile-1.apk
adb pull /data/app/com.lookout-1.apk
adb pull /data/app/com.mobitv.client.sprinttvng-1.apk
adb pull /data/app/com.nascar.nascarmobile-1.apk
adb pull /data/app/com.nbadigital.gametimelite-1.apk
adb pull /data/app/com.nextradioapp.nextradio-1.apk
adb pull /data/app/com.pinsight.eureka.offers-1.apk
adb pull /data/app/com.sprint.android.musicplus2033-1.apk
adb pull /data/app/com.sprint.w.v8-1.apk
adb pull /data/app/com.telenav.app.android.scout_us-1.apk
adb pull /data/app/com.wipit.sprintmoneyexpress-1.apk
adb pull /data/app/msgplus.jibe.sca-1.apk
ECHO.
ECHO If you don't see any errors above, APKs have been backed up to
ECHO %CD%
ECHO.
SET /P ANSWER=Uninstall user apps (Y/N)?
IF /i "%ANSWER%"=="y" GOTO :yes2
IF /i "%ANSWER%"=="yes" GOTO :yes2
GOTO :no
:yes2
ECHO.
ECHO Uninstalling user apps . . .
ECHO.
if exist com.ebay.mobile-1.apk ( adb uninstall com.ebay.mobile ) else ( ECHO com.ebay.mobile-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.lookout-1.apk ( adb uninstall com.lookout ) else ( ECHO com.lookout-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.mobitv.client.sprinttvng-1.apk ( adb uninstall com.mobitv.client.sprinttvng ) else ( ECHO com.mobitv.client.sprinttvng-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.nascar.nascarmobile-1.apk ( adb uninstall com.nascar.nascarmobile ) else ( ECHO com.nascar.nascarmobile-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.nbadigital.gametimelite-1.apk ( adb uninstall com.nbadigital.gametimelite ) else ( ECHO com.nbadigital.gametimelite-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.nextradioapp.nextradio-1.apk ( adb uninstall com.nextradioapp.nextradio ) else ( ECHO com.nextradioapp.nextradio-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.pinsight.eureka.offers-1.apk ( adb uninstall com.pinsight.eureka.offers ) else ( ECHO com.pinsight.eureka.offers-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.sprint.android.musicplus2033-1.apk ( adb uninstall com.sprint.android.musicplus2033 ) else ( ECHO com.sprint.android.musicplus2033-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.sprint.w.v8-1.apk ( adb uninstall com.sprint.w.v8 ) else ( ECHO com.sprint.w.v8-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.telenav.app.android.scout_us-1.apk ( adb uninstall com.telenav.app.android.scout_us ) else ( ECHO com.telenav.app.android.scout_us-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist com.wipit.sprintmoneyexpress-1.apk ( adb uninstall com.wipit.sprintmoneyexpress ) else ( ECHO com.wipit.sprintmoneyexpress-1.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist msgplus.jibe.sca-1.apk ( adb uninstall msgplus.jibe.sca ) else ( ECHO msgplus.jibe.sca-1.apk BACKUP NOT FOUND, SKIPPING . . . )
ECHO.
ECHO Uninstall of user apps complete.
SET /P ANSWER=Press ENTER to reboot into recovery . . .
ECHO.
ECHO Rebooting into recovery . . .
ECHO.
adb reboot recovery
SET /P v="Press ENTER when the phone has rebooted into recovery . . ."
ECHO.
adb root
adb remount
ECHO.
ECHO If you do not see "remount succeeded" above, use your recovery's GUI to mount
ECHO the System partition. If you see "remount succeeded" or have mounted /system/
SET /P v="manually, press ENTER . . ."
ECHO.
ECHO Backing up files . . .
adb pull /system/app/18892_SPC_HTC_Mobile_Guide_M8WHL.apk
adb pull /system/app/Books.apk
adb pull /system/app/HtcResetNotify.apk
adb pull /system/app/KidMode-google.apk
adb pull /system/app/Magazines.apk
adb pull /system/app/QXDM2SD.apk
adb pull /system/app/Smith.apk
adb pull /system/app/TetheringGuard.apk
adb pull /system/app/UDove.apk
adb pull /system/priv-app/CheckinProvider.apk
adb pull /system/priv-app/DemoFLOPackageInstaller.apk
adb pull /system/priv-app/GoogleFeedback.apk
adb pull /system/priv-app/HtcSpeakNGF.apk
adb pull /system/priv-app/HtcSpeakUI.apk
adb pull /system/priv-app/HtcSpeak_HFM.apk
adb pull /system/priv-app/ID.apk
adb pull /system/priv-app/LMIRescue.apk
adb pull /system/priv-app/LMIRescueSecurity.apk
adb pull /system/priv-app/MyBreeze.apk
adb pull /system/priv-app/SprintInstaller.apk
adb pull /system/priv-app/Stock.apk
adb pull /system/priv-app/T6-Lumen-1.1.1.42998.apk
adb pull /system/priv-app/Transfer.apk
adb pull /system/app/CIMEXT9.apk
adb pull /system/app/IMEMurasuIndic.apk
adb pull /system/app/IMEMurasuViet.apk
adb pull /system/app/IMEXT9Arabic.apk
adb pull /system/app/IMEXT9Armenian.apk
adb pull /system/app/IMEXT9BahasaIndonesia.apk
adb pull /system/app/IMEXT9BahasaMalaysia.apk
adb pull /system/app/IMEXT9Bulgaria.apk
adb pull /system/app/IMEXT9Catalan.apk
adb pull /system/app/IMEXT9Croatian.apk
adb pull /system/app/IMEXT9Czech.apk
adb pull /system/app/IMEXT9Danish.apk
adb pull /system/app/IMEXT9Dutch.apk
adb pull /system/app/IMEXT9Estonian.apk
adb pull /system/app/IMEXT9Farsi.apk
adb pull /system/app/IMEXT9Finnish.apk
adb pull /system/app/IMEXT9Greek.apk
adb pull /system/app/IMEXT9Hebrew.apk
adb pull /system/app/IMEXT9Hungarian.apk
adb pull /system/app/IMEXT9Kazakh.apk
adb pull /system/app/IMEXT9Latvian.apk
adb pull /system/app/IMEXT9Lithuanian.apk
adb pull /system/app/IMEXT9Norwegian.apk
adb pull /system/app/IMEXT9Polish.apk
adb pull /system/app/IMEXT9Portuguese.apk
adb pull /system/app/IMEXT9Romanian.apk
adb pull /system/app/IMEXT9Russian.apk
adb pull /system/app/IMEXT9Serbian.apk
adb pull /system/app/IMEXT9Slovak.apk
adb pull /system/app/IMEXT9Slovenian.apk
adb pull /system/app/IMEXT9Swedish.apk
adb pull /system/app/IMEXT9Thai.apk
adb pull /system/app/IMEXT9Turkish.apk
adb pull /system/app/IMEXT9Ukrainian.apk
adb pull /system/customize/resource/HTC_Sense5_Boot.mp3
adb pull /system/customize/resource/BM_startup_animation.zip
adb pull /system/customize/resource/VM_startup_animation.zip
ECHO.
ECHO If you don't see any errors above, APKs have been backed up to
ECHO %CD%
ECHO.
SET /P ANSWER=Delete files from /system/ (Y/N)?
IF /i "%ANSWER%"=="y" GOTO :yes3
IF /i "%ANSWER%"=="yes" GOTO :yes3
GOTO :no
:yes3
ECHO.
if exist 18892_SPC_HTC_Mobile_Guide_M8WHL.apk ( adb shell "rm /system/app/18892_SPC_HTC_Mobile_Guide_M8WHL.apk" ) else ( ECHO 18892_SPC_HTC_Mobile_Guide_M8WHL.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Books.apk ( adb shell "rm /system/app/Books.apk" ) else ( ECHO Books.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HtcResetNotify.apk ( adb shell "rm /system/app/HtcResetNotify.apk" ) else ( ECHO HtcResetNotify.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist KidMode-google.apk ( adb shell "rm /system/app/KidMode-google.apk" ) else ( ECHO KidMode-google.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Magazines.apk ( adb shell "rm /system/app/Magazines.apk" ) else ( ECHO Magazines.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist QXDM2SD.apk ( adb shell "rm /system/app/QXDM2SD.apk" ) else ( ECHO QXDM2SD.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Smith.apk ( adb shell "rm /system/app/Smith.apk" ) else ( ECHO Smith.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist TetheringGuard.apk ( adb shell "rm /system/app/TetheringGuard.apk" ) else ( ECHO TetheringGuard.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist UDove.apk ( adb shell "rm /system/app/UDove.apk" ) else ( ECHO UDove.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist CheckinProvider.apk ( adb shell "rm /system/priv-app/CheckinProvider.apk" ) else ( ECHO CheckinProvider.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist DemoFLOPackageInstaller.apk ( adb shell "rm /system/priv-app/DemoFLOPackageInstaller.apk" ) else ( ECHO DemoFLOPackageInstaller.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist GoogleFeedback.apk ( adb shell "rm /system/priv-app/GoogleFeedback.apk" ) else ( ECHO GoogleFeedback.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HtcSpeakNGF.apk ( adb shell "rm /system/priv-app/HtcSpeakNGF.apk" ) else ( ECHO HtcSpeakNGF.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HtcSpeakUI.apk ( adb shell "rm /system/priv-app/HtcSpeakUI.apk" ) else ( ECHO HtcSpeakUI.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HtcSpeak_HFM.apk ( adb shell "rm /system/priv-app/HtcSpeak_HFM.apk" ) else ( ECHO HtcSpeak_HFM.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist ID.apk ( adb shell "rm /system/priv-app/ID.apk" ) else ( ECHO ID.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist LMIRescue.apk ( adb shell "rm /system/priv-app/LMIRescue.apk" ) else ( ECHO LMIRescue.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist LMIRescueSecurity.apk ( adb shell "rm /system/priv-app/LMIRescueSecurity.apk" ) else ( ECHO LMIRescueSecurity.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist MyBreeze.apk ( adb shell "rm /system/priv-app/MyBreeze.apk" ) else ( ECHO MyBreeze.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist SprintInstaller.apk ( adb shell "rm /system/priv-app/SprintInstaller.apk" ) else ( ECHO SprintInstaller.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Stock.apk ( adb shell "rm /system/priv-app/Stock.apk" ) else ( ECHO Stock.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist T6-Lumen-1.1.1.42998.apk ( adb shell "rm /system/priv-app/T6-Lumen-1.1.1.42998.apk" ) else ( ECHO T6-Lumen-1.1.1.42998.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist Transfer.apk ( adb shell "rm /system/priv-app/Transfer.apk" ) else ( ECHO Transfer.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist CIMEXT9.apk ( adb shell "rm /system/app/CIMEXT9.apk" ) else ( ECHO CIMEXT9.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEMurasuIndic.apk ( adb shell "rm /system/app/IMEMurasuIndic.apk" ) else ( ECHO IMEMurasuIndic.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEMurasuViet.apk ( adb shell "rm /system/app/IMEMurasuViet.apk" ) else ( ECHO IMEMurasuViet.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Arabic.apk ( adb shell "rm /system/app/IMEXT9Arabic.apk" ) else ( ECHO IMEXT9Arabic.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Armenian.apk ( adb shell "rm /system/app/IMEXT9Armenian.apk" ) else ( ECHO IMEXT9Armenian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9BahasaIndonesia.apk ( adb shell "rm /system/app/IMEXT9BahasaIndonesia.apk" ) else ( ECHO IMEXT9BahasaIndonesia.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9BahasaMalaysia.apk ( adb shell "rm /system/app/IMEXT9BahasaMalaysia.apk" ) else ( ECHO IMEXT9BahasaMalaysia.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Bulgaria.apk ( adb shell "rm /system/app/IMEXT9Bulgaria.apk" ) else ( ECHO IMEXT9Bulgaria.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Catalan.apk ( adb shell "rm /system/app/IMEXT9Catalan.apk" ) else ( ECHO IMEXT9Catalan.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Croatian.apk ( adb shell "rm /system/app/IMEXT9Croatian.apk" ) else ( ECHO IMEXT9Croatian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Czech.apk ( adb shell "rm /system/app/IMEXT9Czech.apk" ) else ( ECHO IMEXT9Czech.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Danish.apk ( adb shell "rm /system/app/IMEXT9Danish.apk" ) else ( ECHO IMEXT9Danish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Dutch.apk ( adb shell "rm /system/app/IMEXT9Dutch.apk" ) else ( ECHO IMEXT9Dutch.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Estonian.apk ( adb shell "rm /system/app/IMEXT9Estonian.apk" ) else ( ECHO IMEXT9Estonian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Farsi.apk ( adb shell "rm /system/app/IMEXT9Farsi.apk" ) else ( ECHO IMEXT9Farsi.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Finnish.apk ( adb shell "rm /system/app/IMEXT9Finnish.apk" ) else ( ECHO IMEXT9Finnish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Greek.apk ( adb shell "rm /system/app/IMEXT9Greek.apk" ) else ( ECHO IMEXT9Greek.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Hebrew.apk ( adb shell "rm /system/app/IMEXT9Hebrew.apk" ) else ( ECHO IMEXT9Hebrew.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Hungarian.apk ( adb shell "rm /system/app/IMEXT9Hungarian.apk" ) else ( ECHO IMEXT9Hungarian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Kazakh.apk ( adb shell "rm /system/app/IMEXT9Kazakh.apk" ) else ( ECHO IMEXT9Kazakh.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Latvian.apk ( adb shell "rm /system/app/IMEXT9Latvian.apk" ) else ( ECHO IMEXT9Latvian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Lithuanian.apk ( adb shell "rm /system/app/IMEXT9Lithuanian.apk" ) else ( ECHO IMEXT9Lithuanian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Norwegian.apk ( adb shell "rm /system/app/IMEXT9Norwegian.apk" ) else ( ECHO IMEXT9Norwegian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Polish.apk ( adb shell "rm /system/app/IMEXT9Polish.apk" ) else ( ECHO IMEXT9Polish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Portuguese.apk ( adb shell "rm /system/app/IMEXT9Portuguese.apk" ) else ( ECHO IMEXT9Portuguese.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Romanian.apk ( adb shell "rm /system/app/IMEXT9Romanian.apk" ) else ( ECHO IMEXT9Romanian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Russian.apk ( adb shell "rm /system/app/IMEXT9Russian.apk" ) else ( ECHO IMEXT9Russian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Serbian.apk ( adb shell "rm /system/app/IMEXT9Serbian.apk" ) else ( ECHO IMEXT9Serbian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Slovak.apk ( adb shell "rm /system/app/IMEXT9Slovak.apk" ) else ( ECHO IMEXT9Slovak.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Slovenian.apk ( adb shell "rm /system/app/IMEXT9Slovenian.apk" ) else ( ECHO IMEXT9Slovenian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Swedish.apk ( adb shell "rm /system/app/IMEXT9Swedish.apk" ) else ( ECHO IMEXT9Swedish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Thai.apk ( adb shell "rm /system/app/IMEXT9Thai.apk" ) else ( ECHO IMEXT9Thai.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Turkish.apk ( adb shell "rm /system/app/IMEXT9Turkish.apk" ) else ( ECHO IMEXT9Turkish.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist IMEXT9Ukrainian.apk ( adb shell "rm /system/app/IMEXT9Ukrainian.apk" ) else ( ECHO IMEXT9Ukrainian.apk BACKUP NOT FOUND, SKIPPING . . . )
if exist HTC_Sense5_Boot.mp3 ( adb shell "rm /system/customize/resource/HTC_Sense5_Boot.mp3" ) else ( ECHO HTC_Sense5_Boot.mp3 BACKUP NOT FOUND, SKIPPING . . . )
if exist BM_startup_animation.zip ( adb shell "rm /system/customize/resource/BM_startup_animation.zip" ) else ( ECHO BM_startup_animation.zip BACKUP NOT FOUND, SKIPPING . . . )
if exist VM_startup_animation.zip ( adb shell "rm /system/customize/resource/VM_startup_animation.zip" ) else ( ECHO VM_startup_animation.zip BACKUP NOT FOUND, SKIPPING . . . )
ECHO.
ECHO Deletion of system apps completed.
SET /P ANSWER=Press ENTER to reboot . . .
ECHO.
ECHO Rebooting . . .
adb reboot
ECHO.
ECHO Bloat apps have been removed and backed up to
ECHO %CD%
ECHO.
GOTO :end
:no
ECHO.
ECHO Cancelling . . .
ECHO.
:end
PAUSE
EXIT
Click to expand...
Click to collapse
Very cool! I'm not sure yet but I may have to put a couple back in order to get HTC's voice command to work with my dot view case as that functionality seems to be gone now. But 95% of those apps are useless for me. Thanks a ton!
henderjr said:
Very cool! I'm not sure yet but I may have to put a couple back in order to get HTC's voice command to work with my dot view case as that functionality seems to be gone now. But 95% of those apps are useless for me. Thanks a ton!
Click to expand...
Click to collapse
Yeah, you'll have to put back the 3 HTCSpeak files. I'd removed them since they seemed redundant to Google Voice Search for the car app, but I didn't realize think about the dot view case. I'll take those out of the script.
EDIT: I also added a rebloat script to make putting them back a bit easier.
NO big deal I put them back along with kids mode (want to try it with my daughter). Nice tool nonetheless. I had been meaning to remove some of that crap with titanium but this is much easier and gets those I would've missed. Thanks again!
My only question is, can this be run without rooting/unlocking the phone? I have rooted every Android I've owned, but not this phone yet. I'm in no hurry to do so, but would DEFINITELY like to remove those apps!
I ran the bat and the apps are still installed.
Sent from my 831C using xda app-developers app
tyler.durden said:
My only question is, can this be run without rooting/unlocking the phone? I have rooted every Android I've owned, but not this phone yet. I'm in no hurry to do so, but would DEFINITELY like to remove those apps!
Click to expand...
Click to collapse
The apps that Sprint installs after you activate the phone can be uninstalled without root, but you need root to remove the system app s.
how to remove app that Sprint install
ahecht said:
The apps that Sprint installs after you activate the phone can be uninstalled without root, but you need root to remove the system app s.
Click to expand...
Click to collapse
Can you introduce me to remove app? Thanks
I have an HTC one M7 bought from the HTC website as "global" edition phone when it came out. Later, I converted it to google play edition. I have root, unlocked bootloader, and S-off.
Few days ago I received a notification to install the Lollipop system update in my phone. I accepted it, and the phone restarted. However nothing changed. I did some research on this, and realized that I cannot update to Lollipop unless I have stock recovery (I currently have TWRP).
I am considering one of the two options:
1) Convert back to HTC Sense and wait for HTC to release Lollipop later this month, or
2) Replace TWRP with stock recovery and accept all the bugs that come with a non-HTC Lollipop.
Question: I am trying to get adb to work with my phone but "adb devices" command shows an empty list. I have latest Android Studio 1.0 build 135.1629389. I have latest HTC sync manager installed. I have enabled USB debugging option in my phone as MTP. I have rebooted my phone, my Windows 7 (64-bit, Ultimate), I have plugged and unplugged the USB Cable several times, and the USB cable is directly connected to a USB 2.0 port in the motherboard at the back of my Desktop computer.
Any help will be appreciated
anil_robo said:
I have an HTC one M7 bought from the HTC website as "global" edition phone when it came out. Later, I converted it to google play edition. I have root, unlocked bootloader, and S-off.
Few days ago I received a notification to install the Lollipop system update in my phone. I accepted it, and the phone restarted. However nothing changed. I did some research on this, and realized that I cannot update to Lollipop unless I have stock recovery (I currently have TWRP).
I am considering one of the two options:
1) Convert back to HTC Sense and wait for HTC to release Lollipop later this month, or
2) Replace TWRP with stock recovery and accept all the bugs that come with a non-HTC Lollipop.
Question: I am trying to get adb to work with my phone but "adb devices" command shows an empty list. I have latest Android Studio 1.0 build 135.1629389. I have latest HTC sync manager installed. I have enabled USB debugging option in my phone as MTP. I have rebooted my phone, my Windows 7 (64-bit, Ultimate), I have plugged and unplugged the USB Cable several times, and the USB cable is directly connected to a USB 2.0 port in the motherboard at the back of my Desktop computer.
Any help will be appreciated
Click to expand...
Click to collapse
Have you enabled usb debugging?
Have you downloaded the latest adb/fastboot files from recent android sdk? This will update the files and fix the issue
If you want to flash stock recovery again, download the firmware for 4.4.4 and flash it. It will flash stock recovery
anil_robo said:
.
Question: I am trying to get adb to work with my phone but "adb devices" command shows an empty list. I have latest Android Studio 1.0 build 135.1629389. I have latest HTC sync manager installed. I have enabled USB debugging option in my phone as MTP. I have rebooted my phone, my Windows 7 (64-bit, Ultimate), I have plugged and unplugged the USB Cable several times, and the USB cable is directly connected to a USB 2.0 port in the motherboard at the back of my Desktop computer.
Any help will be appreciated
Click to expand...
Click to collapse
you don't need adb to flash the stock recovery you need fastboot working ... does fastboot devices show the serial number when your in the bootloader screen.
sometimes you have to force install the drivers in windows while the phone is in the fastboot screen or recovery
clsA said:
you don't need adb to flash the stock recovery you need fastboot working ... does fastboot devices show the serial number when your in the bootloader screen.
sometimes you have to force install the drivers in windows while the phone is in the fastboot screen or recovery
Click to expand...
Click to collapse
Fastboot devices = does not show anything (returns blank line)/
anil_robo said:
Fastboot devices = does not show anything (returns blank line)/
Click to expand...
Click to collapse
fix your drivers
https://www.youtube.com/watch?v=PUjQnwULGzs
https://www.youtube.com/watch?v=rfC9_HXaI_U
anil_robo said:
I have an HTC one M7 bought from the HTC website as "global" edition phone when it came out. Later, I converted it to google play edition. I have root, unlocked bootloader, and S-off.
Few days ago I received a notification to install the Lollipop system update in my phone. I accepted it, and the phone restarted. However nothing changed. I did some research on this, and realized that I cannot update to Lollipop unless I have stock recovery (I currently have TWRP).
I am considering one of the two options:
1) Convert back to HTC Sense and wait for HTC to release Lollipop later this month, or
2) Replace TWRP with stock recovery and accept all the bugs that come with a non-HTC Lollipop.
Question: I am trying to get adb to work with my phone but "adb devices" command shows an empty list. I have latest Android Studio 1.0 build 135.1629389. I have latest HTC sync manager installed. I have enabled USB debugging option in my phone as MTP. I have rebooted my phone, my Windows 7 (64-bit, Ultimate), I have plugged and unplugged the USB Cable several times, and the USB cable is directly connected to a USB 2.0 port in the motherboard at the back of my Desktop computer.
Any help will be appreciated
Click to expand...
Click to collapse
I also have an M7 (Tmo) that I converted to GPE, and I have the same issues with ADB, even with the newest ADB files. When phone is booted into system (with USB debugging enabled) it shows up in ADB devices list, but not when booted into bootloader. If I try to execute an ADB command through bootloader I get a device not connected error. The phone does show up in Fastboot devices list, however. Are you sure you have updated drivers? This is the one I use: http://adbdriver.com/upload/AdbDriverInstaller.exe.
Here's a link to the latest ADB files: http://forum.xda-developers.com/showthread.php?t=2317790
The easiest way to update to 5.0 Lollipop is to flash back to stock kernel/recovery and then boot into the system and apply the downloaded update. After the update completes you can flash back to TWRP if you'd like. I wrote two simple .bat files that prompt you through the stock kernel/recovery and TWRP flash processes rather than having to type commands. I've attached them, along with the relevant recovery and kernel files. The .bat files won't work without the proper ADB files, so be sure to download those if necessary, along with the newest TWRP.
lords8n said:
I have the same issues with ADB, even with the newest ADB files. When phone is booted into system (with USB debugging enabled) it shows up in ADB devices list, but not when booted into bootloader. If I try to execute an ADB command through bootloader I get a device not connected error. The phone does show up in Fastboot devices list, however.
Click to expand...
Click to collapse
100% normal, Its not possible to use adb commands from the bootloader and this is not a new thing, not related to the version your are using
edit: @lords8n
and to avoid issue when booting to the new recovery, you should always erase cache and reboot the bootloader after flashing the recovery image. So in your batch files, you should add these 2 lines:
Code:
@echo off
adb start-server
:Menu
cls
echo.
echo.
echo **** HTC ONE M7 Latest TWRP Recovery Flash ****
echo.
echo.
echo Press b to reboot to bootloader
echo Press t to flash latest M7 TWRP recovery
echo Press x to exit
echo.
echo.
SET /P M=Press b, t, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==t GOTO TWRP
if %M%==x GOTO Exit
:Bootloader
echo.
echo **** Rebooting to Bootloader ****
adb reboot-bootloader
pause
echo.
SET /P M=Press b, t, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==t GOTO TWRP
if %M%==x GOTO Exit
:TWRP
echo.
echo **** Flashing Latest M7 TWRP Recovery ****
fastboot flash recovery openrecovery-twrp-2.8.1.0-m7.img
[COLOR="Red"]fastboot erase cache
fastboot reboot-bootloader[/COLOR]
pause
echo.
SET /P M=Press b, t, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==t GOTO TWRP
if %M%==x GOTO Exit
:exit
exit
same thing here:
Code:
:Menu
cls
echo.
echo.
echo **** HTC ONE M7 Stock Kernel and Recovery Flash ****
echo.
echo.
echo Press b to reboot to bootloader
echo Press k to flash M7 stock kernel
echo Press r to flash M7 stock recovery
echo Press x to exit
echo.
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:Bootloader
echo.
echo **** Rebooting to Bootloader ****
adb reboot-bootloader
pause
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:Kernel
echo.
echo **** Flashing M7 Stock Kernel ****
fastboot flash boot boot.img
pause
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:Recovery
echo.
echo **** Flashing M7 Stock Recovery ****
fastboot flash recovery recovery.img
[COLOR="red"]fastboot erase cache
fastboot reboot-bootloader[/COLOR]
pause
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:exit
exit
---------- Post added at 06:47 PM ---------- Previous post was at 06:20 PM ----------
lords8n said:
I've attached them, along with the relevant recovery and kernel files. The .bat files won't work without the proper ADB files, so be sure to download those if necessary, along with the newest TWRP.
Click to expand...
Click to collapse
You did not included openrecovery-twrp-2.8.1.0-m7.img in your package so your "M7 TWRP Recovery Flash" batch will not do anything if the OP launch it.
alray said:
100% normal, Its not possible to use adb commands from the bootloader and this is not a new thing, not related to the version your are using
edit: @lords8n
and to avoid issue when booting to the new recovery, you should always erase cache and reboot the bootloader after flashing the recovery image. So in your batch files, you should add these 2 lines:
Code:
@echo off
adb start-server
:Menu
cls
echo.
echo.
echo **** HTC ONE M7 Latest TWRP Recovery Flash ****
echo.
echo.
echo Press b to reboot to bootloader
echo Press t to flash latest M7 TWRP recovery
echo Press x to exit
echo.
echo.
SET /P M=Press b, t, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==t GOTO TWRP
if %M%==x GOTO Exit
:Bootloader
echo.
echo **** Rebooting to Bootloader ****
adb reboot-bootloader
pause
echo.
SET /P M=Press b, t, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==t GOTO TWRP
if %M%==x GOTO Exit
:TWRP
echo.
echo **** Flashing Latest M7 TWRP Recovery ****
fastboot flash recovery openrecovery-twrp-2.8.1.0-m7.img
[COLOR="Red"]fastboot erase cache
fastboot reboot-bootloader[/COLOR]
pause
echo.
SET /P M=Press b, t, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==t GOTO TWRP
if %M%==x GOTO Exit
:exit
exit
same thing here:
Code:
:Menu
cls
echo.
echo.
echo **** HTC ONE M7 Stock Kernel and Recovery Flash ****
echo.
echo.
echo Press b to reboot to bootloader
echo Press k to flash M7 stock kernel
echo Press r to flash M7 stock recovery
echo Press x to exit
echo.
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:Bootloader
echo.
echo **** Rebooting to Bootloader ****
adb reboot-bootloader
pause
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:Kernel
echo.
echo **** Flashing M7 Stock Kernel ****
fastboot flash boot boot.img
pause
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:Recovery
echo.
echo **** Flashing M7 Stock Recovery ****
fastboot flash recovery recovery.img
[COLOR="red"]fastboot erase cache
fastboot reboot-bootloader[/COLOR]
pause
echo.
SET /P M=Press b, k, r, or x then press ENTER:
if %M%==b GOTO Bootloader
if %M%==k GOTO Kernel
if %M%==r GOTO Recovery
if %M%==x GOTO Exit
:exit
exit
---------- Post added at 06:47 PM ---------- Previous post was at 06:20 PM ----------
You did not included openrecovery-twrp-2.8.1.0-m7.img in your package so your "M7 TWRP Recovery Flash" batch will not do anything if the OP launch it.
Click to expand...
Click to collapse
Thanks for the tip alray, just added it to my .bat. You're right, I didn't include TWRP.img in the zip because it would've pushed the size over the 20mb attachment limit. I did recommend downloading it in my post though. :good:
Updated 7.30.20
I have a server up and running and thought it would be perfect to go back to this. I noticed some problems with the original code. After a while, the oem unlock command would hang, so I made it reboot the bootloader ever 1024 keys. I also added an initial oem unlock check because the first time you do the command it asks are you sure. This script should work forever.
I did notice that the screen will get burn in if left on for a long time. I cannot seem to find a way around this, no fastboot command can turn the screen off and keep fastboot running. I figured a $40 screen is worth reviving a $700 phone. This phone has been sitting in a box for years because verizon's anti everyone policies on bootloaders. I will be running this until it cracks the bootloader.
There is an automatic saving/restoring feature in case the computers gets turned off or I need to restart it. I also made the script not repeat characters more than 3 times in a row. I know chances are this won't work, but to me it's worth a try considering I don't have to do anything.
Code:
#!/bin/bash
restore() {
echo "Restoring Previous Session..."
crunch 20 20 ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 -d 3 -s "${file}" | while read line; do
iter=$((iter + 1))
echo "Testing key ${line} - ${iter}"
line2=$((sudo fastboot oem unlock "${line}") 2>&1)
check=$(echo "${line2}" | sed -n 2p)
echo "${check}"
if [ "${check}" != "(bootloader) Code validation failure" ]; then
echo "${line}" >> key
finished
fi
echo "${line}" > current
if [ $iter -eq 1024 ]; then
echo "--------------------"
echo "Rebooting to bootloader"
echo "--------------------"
sudo fastboot reboot bootloader
echo "--------------------"
echo "Sleeping 5 seconds"
echo "--------------------"
sleep 5s
iter=0
echo "--------------------"
echo "Running initial oem unlock"
echo "--------------------"
sudo fastboot oem unlock aaaaaaaaaaaaaaaaaaaa
fi
done
}
new() {
echo "Running New Session..."
crunch 20 20 ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 -d 3 | while read line; do
iter=$((iter + 1))
echo "Testing key ${line} - ${iter}"
line2=$((sudo fastboot oem unlock "${line}") 2>&1)
check=$(echo "${line2}" | sed -n 2p)
echo "${check}"
if [ "${check}" != "(bootloader) Code validation failure" ]; then
echo "${line}" >> key
finished
fi
echo "${line}" > current
if [ $iter -eq 1024 ]; then
echo "--------------------"
echo "Rebooting to bootloader"
echo "--------------------"
sudo fastboot reboot bootloader
echo "--------------------"
echo "Sleeping 5 seconds"
echo "--------------------"
sleep 5s
iter=0
echo "--------------------"
echo "Running initial oem unlock"
echo "--------------------"
sudo fastboot oem unlock aaaaaaaaaaaaaaaaaaaa
fi
done
}
finished() {
echo ""
echo "------------------------------------"
echo ""
echo "A different output was given, probably bootloader key found"
echo "Last checked key was"
echo "${line}"
echo "Key is also stored in a file called key"
echo "${line}" >> key
chmod 555 key
echo ""
echo "------------------------------------"
echo ""
echo "Press enter to close the terminal"
read var
exit 1
}
testresult() {
if [ -f "current" ]; then
file=$(cat current)
if [ "${file}" == "" ]; then
rm current
new
else
restore
fi
else
new
fi
}
testkey() {
if [ -f "key" ]; then
file=$(cat key)
if [ "${file}" == "" ]; then
chmod 775 key
rm key
testresult
else
echo "Key from last run was found, it is"
echo "${file}"
echo "Backing up to key.old"
chmod 775 key
cat key >> key.old
rm key
testresult
fi
else
testresult
fi
}
iter=0
sudo fastboot oem unlock aaaaaaaaaaaaaaaaaaaa
testkey
Knuxyl said:
I wrote a script for linux to bruteforce the bootloader unlock key on the Verizon model Motorola Moto Z2 Force.
Since I do not use my Force I figured I would run a bruteforce on the bootloader to hopefully one day get it unlocked. I am using an ASUS Tinkerboard with Debian 2.0.7 to run this code.
Requirements
Linux (Ubuntu do sudo apt-get install crunch sed, if your using anything else get crunch and sed)
Time
What it does
Generates alpha-numerics keys 20 characters long in order starting at AAAAAAAAAAAAAAAAAAAA.
It creates a file called "current" that will save your spot in case you want to resume later.
It will stop when bootloader response does not says validation failure and save the last used key to a file called "success"
Code (create a .sh file with this, do chmod +x thisfile.sh, then run it with ./thisfile.sh)
Code:
restore() {
crunch 20 20 ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 -s "${file}" | while read line ; do echo "Testing key below ${line}" && line2=$((sudo fastboot oem unlock "${line}") 2>&1) && check=$(echo "${line2}" | sed -n 2p) && echo "${check}" && if [ "${check}" != "(bootloader) Code validation failure" ]; then echo "${line}" >> success && finished ; fi && echo "${line}" > current ; done
}
new() {
crunch 20 20 ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 | while read line ; do echo "Testing key below ${line}" && line2=$((sudo fastboot oem unlock "${line}") 2>&1) && check=$(echo "${line2}" | sed -n 2p) && echo "${check}" && if [ "${check}" != "(bootloader) Code validation failure" ]; then echo "${line}" >> success && finished ; fi && echo "${line}" > current ; done
}
finished() {
clear
echo "A different output was given, probably bootloader key found"
echo "Last checked key was"
echo "${line}"
echo "Key is also stored in a file called success"
echo "${line}" >> success
echo ""
echo "Press enter to close the terminal"
read var
exit 1
}
if [ -f "current" ]; then
file=$(cat current)
if [ "${file}" == "" ]; then
rm current
new
else
restore
fi
else
new
fi
I am running this now, I will post back if I ever get the key. Started 1700 on 23-July-2018.
I am on AAAAAAAAAAAAAAAAAUAA as of 1743 for a time/speed reference.
Click to expand...
Click to collapse
If it works, it might one day, unlock bootloaders for other phones as well. Good luck, first person I found to even try such a thing...
You'd have much better odds winning the lottery than getting a brute force answer in your lifetime. It is really folly. Let's assume you are doing just numeric characters instead of alpha numeric. That gives you 10 to the 20th power number of combinations instead of 36 to the 20th power. So if you wrote really optimized code and could go through 1 billion combinations a second, that would be 10 to the 9th power. I billion seconds later you would have gone through 10 to the 18th power or just one percent of the possible combinations. A billion seconds is a little more than 31 years. So in 3100 years you would have gone though just the strictly numeric solutions. As I've said before, brute force isn't going to get you the answer and shouldn't even be considered a viable answer.
kingstu said:
You'd have much better odds winning the lottery than getting a brute force answer in your lifetime. It is really folly. Let's assume you are doing just numeric characters instead of alpha numeric. That gives you 10 to the 20th power number of combinations instead of 36 to the 20th power. So if you wrote really optimized code and could go through 1 billion combinations a second, that would be 10 to the 9th power. I billion seconds later you would have gone through 10 to the 18th power or just one percent of the possible combinations. A billion seconds is a little more than 31 years. So in 3100 years you would have gone though just the strictly numeric solutions. As I've said before, brute force isn't going to get you the answer and shouldn't even be considered a viable answer.
Click to expand...
Click to collapse
What's your solution? You seem to have all the answers.
Find an exploit.
Try
Code:
fastboot oem unlock nowait
This worked for the Moto 360 on Marshmallow, it MIGHT work.
To find an exploit would be quicker than brute forcing.
doubledragon5 said:
What's your solution? You seem to have all the answers.
Click to expand...
Click to collapse
I don't have all the answers but buying a bootloader unlockable version is what I would recommend. By showing how long it would take I save someone from waiting and waiting for a task that won't complete in his lifetime...
So the phone died like a day later while running the bruteforce. I have the powerpack moto mod so I'm going to have to plug that in to a charger, put it on the phone, and plug usb to phone and pc/tinkerboard... when I get around to it. But I will keep up with this thread.
I tried the nowait fastboot and Code Validation Failure.
Is it even possible for a mobile device to go through 1-billion combinations a second? What if the code was split up over like 10 devices, and the code had each device only working on a smaller section for the unlock code......
azreark1 said:
Is it even possible for a mobile device to go through 1-billion combinations a second? What if the code was split up over like 10 devices, and the code had each device only working on a smaller section for the unlock code......
Click to expand...
Click to collapse
The unlock has to be tested on the specific device so splitting the processing among multiple devices won't solve the problem since each has its own unique code. Just buy a device with an unlockable bootloader since if it was that easy to decode the device wouldn't be very secure and that would have me more worried...
Oh so it's not a generic unlock code, it would still only be device specific?! Yeah thats pretty useless.
The method was initially a failure, why was it laid out here?
08sv80 said:
The method was initially a failure, why was it laid out here?
Click to expand...
Click to collapse
this is really only for people who have a verizon moto z2 force that they do not use and a pc they keep running 24/7. the method is not a failure, it just takes a long time. this is the only solution we have so far, so its better than nothing, but if u dont like it then move on, dont waste time posting useless comments.
for anyone that was interested in this, i must note that while phone is on the bootloader (fastboot) the screen stays on at like max brightness the whole time, so it can easily cause screen burn in. until i find some fastboot command to turn the screen off this is highly not recommended. Mine started burning in so I stopped the process.
you write nonsense and make people believe it? take it easy. your method is initially a failure. Believe on 4PDA, we know all the working methods.
If it hasn't been done, I believe the only way to unlock these bootloaders is exercising some consumer rights through a legal battle, and good luck with that, not worth wasting the time and money. I would be happy to just have temp-root, even if I have to do it every time I boot the phone. That would be more productive to chase, but I believe all exploits have been tried.
Could somebody use IBM's quantum computer
What if somebody could rewrite the script and use IBM's quantum computer. I am not a developer or a script Kitty or anything but that idea crossed my mind. Could it be possible or is it possible. I do know IBM lets people use their old quantum computer so it's just an idea.
Fastlane81 said:
What if somebody could rewrite the script and use IBM's quantum computer. I am not a developer or a script Kitty or anything but that idea crossed my mind. Could it be possible or is it possible. I do know IBM lets people use their old quantum computer so it's just an idea.
Click to expand...
Click to collapse
It's the phone's response and process that takes time, not the computer running the script.
m4f1050 said:
It's the phone's response and process that takes time, not the computer running the script.
Click to expand...
Click to collapse
Ok I figured that there was so many combinations that the normal computer couldn't figure out the combinations that fastso I figured with a quantum computer it can do it in days instead of months or years. That is what I was thinking.
Fastlane81 said:
Ok I figured that there was so many combinations that the normal computer couldn't figure out the combinations that fastso I figured with a quantum computer it can do it in days instead of months or years. That is what I was thinking.
Click to expand...
Click to collapse
Trust me, even an 8-bit Atari can create random numbers fast enough for this task (not saying you can use one, because you need to store the numbers and compare the newly created one with the ones already used, which I would use SQL server for this and not memory.) It's the phone itself the one slowing this down when entering the number and waiting for the phone to respond and starting the process again.
Kindly give instructions.
If someone can kindly give me instructions on how to initiate this code that would be awesome I have Ubuntu 20.04.1 installed on my desktop. And I just need to know how to initiate this script. If you can email me at [email protected] that would be awesome thank you very much