Related
Hi everyone,
I have a few questions. First of all, I've got a rooted HTC Magic with Super E.
I'm developing an app and, as far as I know, it is not possible to execute Java code as root. Is this correct? If there is a way, tell me. The only way I've found is by using shell comands:
Process p;
try {
// Preform su to get root privledges
p = Runtime.getRuntime().exec("su");
(...)
I would need root access for example to avoid the dialog asking for permission when I enable bluetooth discoverability, or the dialog asking for permission when installing a secondary app from the market.
Another question: is there a way to make the device permanently discoverable (bluetooth)?
By the way, how can I enable bluetooth and discoverability using shell comands?
Thanks!
Hi There Everybody ! I am Seaskyways and I am back with a surprise ! My Android Java Class "Shells" !
App Devs ! Shells Java Class
My Java class Shells is a class to simplify the use of sending normal commands (Shell Commands) and capturing their output ! The Reason its called Shells because it is not a single shell , its not only two or three methods , its a wide variety of methods that helps you complete your wanting easily ! Whoever , it is not totally stable and I need some help from app / java devs to fix some Exceptions , please anybody who knows contact me . The functions and uses of the class will be provided gradually in this thread (because I will have my term tests nearly) .... I might be updating this class about weekly , because I am busy , sorry
This Class will provide mainly a root shell for rooted devices , and a non-root shell for non-rooted devices , and free single command sending which returns the output , more info down
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Functions (Methods):
Start(): public void , returns nothing , used to start both the Root shell and Non-root Shell.
Stop(): public void , returns nothing , used to stop both the Root shell and Non-root Shell , plus it resets the variables used in those shells.
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Logsh(): public String , returns a String showing all the output of the commands sent using the Non-root shell , may cause the Non-root shell to stop , if an error occurs , please call Start() before using it . (please help here a small bug)
Logsu(): public String , returns a String showing all the output of the commands sent using the Root shell , may cause the Root shell to stop , if an error occurs , please call Start() before using it . (please help here a small bug)
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Readsh(): public String , returns a String showing the last command's output sent using the Non-Root shell , may cause the Non-root shell to stop , if an error occurs , please call Start() before using it .
Readsu(): public String , returns a String showing the last command's output sent using the Root shell , may cause the Root shell to stop , if an error occurs , please call Start() before using it .
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
su(String): public void , returns nothing , this is the Root shell, it executes the command given as root , it is used in the following form
Code:
Start();
su("My command");
sh(String): public void , returns nothing , this is the Non-Root shell, it executes the command given as normal user , it is used in the following form
Code:
Start();
sh("My command");
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
su(String[]): public void , returns nothing , this is the Root shell,it converts the array to a String then it executes the command given as root , it is used in the following form
Code:
Start();
su("My", "command");
sh(String[]): public void , returns nothing , this is the Non-Root shell,it converts the array to a String then it executes the command given as normal user , it is used in the following form
Code:
Start();
sh("My", "command");
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Shells(); public static Shells , it returns new Shells()
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Download Dev-host
More Explanations coming later
Reserved in case needed !
Looks usable!
Sent from my Galaxy Nexus running Android 4.2 JB
Its Very usable , but I need help in fixing it ! Plus I tried posting this on the portal , but seemed uninteresting to XDA
seaskyways said:
Its Very usable , but I need help in fixing it ! Plus I tried posting this on the portal , but seemed uninteresting to XDA
Click to expand...
Click to collapse
This is almost a year old, but this looks like exactly what I need! Seems the link is down Can you PM me or reply ? If you have time of course.
Just another party by Keen Team
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I'm getting increased queries and replies in this post/PM recently, so I'll try to make this clear (hopefully) for 99% of people. Short version of OP which you must read:
1. Don't install 5.1.1 for now if you ever want to root without tripping Knox warranty.
2. No new ROM can be supported as bug has been fixed.
3. If you don't know how to check a kernel's build date, DO NOT submit FPTAG.
Full story:
New bootloader blocks downgrading, be careful installing 5.1.1 OTA! More details: http://forum.xda-developers.com/tmobile-galaxy-s6-edge/general/psa-odin-5-1-1-t3136151
Kernel built after May 15th (including some 5.0.2 and all 5.1.1) have this bug fixed. Be cautious when installing OTA these days and FlashFire might be your best shot of upgrading systems. Use Odin to unroot and receive OTA if you want.
Current version: Beta 6 (HTC One (M9) SUPERSU VERSION! Check updated Usage section!)
Since Beta 5.2: Should be more "stable" on devices with more application installed, but I'm not 100% sure. If it doesn't work, roll back to beta 5.1
I'm getting too many queries about Note 4. Two things to clarify: 1) No device data needed to root Note 4, try KingRoot 4.0. 2) Unless you have KNOX warranty bit tripped already, there is no perm-root for Note 4 yet.
If you have decent bandwidth and experience with ROM files, please see this: http://forum.xda-developers.com/galaxy-s6/general/root-pingpong-root-rom-workshop-thread-t3104639. Volunteers needed to speed up adding new ROMs.
Big THANK YOU to all helped collecting ROMs. Now we have 91+2 ROM versions supported!
Everyone please do me a favor. If you want a ROM (S6 or S6E) get supported, please confirm it is not yet supported and post a reply in this thread like:
FPTAG fingerprint here
So I can quickly filter FP out of the replys by using search. Thanks.Only submit if you know what a kernel build date is.
Supported devices
Samsung Galaxy S6 with following ROM versions:
G9200ZCU1AOD5
G9200ZHU1AOD3
G9200ZHU1AOD9
G920R4TYU1AOD3
G920IDVU1AOD1
G920FXXU1AOCV
G920PVPU1AOCF
G920TUVU1AOCG
G920VVRU1AOC3
G920FXXU1AOBN
G920FXXU1AODG
G9209KEU1AOCI
G9209KEU1AODA
G9208ZMU1AOD5
G9208ZMU1AOCI
G920FXXU1AOD9
G920AUCU1AOCE
G920FXXU1AODE
G9200ZCU1AOD9
G920W8VLU1AOCG
G920FXXU1AOD4
G920R4TYU1AOCB
***new*** Use Download Data!
G920FXXU1AOCY
G920IDVU1AOC4
G920FXXU1AODI
G9209KEU1AOD5
G920IDVU1AOBQ
G9208ZTU1AOD9
G920FXXU1AOE3
G920IDVU1AOE3
G920FXXU1AOD8
G920FXXU1AOE4
G920AUCU1AOE2
G920T1UVU1AOCH
G9208ZTU1AOCI
G920IDVU1AOC6
G920IDVU1AOD3
G920FXXU1AOCZ
G920AZTUU1AOD1
G9200ZHU1AOE4
G9200ZCU1AOE4
G920KKKU1AODC
G920IDVU1AOE4
G920LKLU1AODC
G920SKSU1AODC
G920IDVU1BOE2
G9208ZTU1AOE4
G920PVPU1AOE2
G920W8VLU1AOE1
G920VVRU1AOE2
SC04GOMU1AOE1
Samsung Galaxy S6 Edge with following ROM versions:
G9250ZCU1AODC
G925VVRU1AOC3
G925FXXU1AOD9
G925PVPU1AOCF
G925FXXU1AOCV
G925AUCU1AOCE
G925TUVU1AOCG
G925W8VLU1AOCG
G925IDVU1AOD1
G925SKSU1AOD5
***new*** Use Download Data!
G925FXXU1AOD4
G925R4TYU1AOD3
G925FXXU1AODG
G925FXXU1AOCZ
G925IDVU1AOD3
G925LKLU1AOD8
G925SKSU1AOD8
G925FXXU1AOE3
G925PVPU1AOE2
G925FXXU1AOD8
G9250ZTU1AODC
G925FXXU1AOE4
G925AUCU1AOE2
G925TUVU1COE6
G925FXXU1AOCY
G9250ZTU1AOE4 (5/11 kernel, seems not fixed yet, please test)
G925R4TYU1AOE2
SCV31KDU1AOCP (Japan version of S6E?)
G9250ZCU1AOCH
G9250ZCU1AOE4
G925IDVU1AOE4
G925IDVU1BOE1
G925LKLU1AODC
G925IDVU1AOE3
G925IDVU1AOE2
G925KKKU1AODC
G925SKSU1AODC
G925W8VLU1AOE1
G925VVRU1AOE2
G925R7WWU1AOE3
HTC One (M9) -- EXPERIMENTAL, UNLOCKED BL REQUIRED
htc/himauhl_htccn_chs_2/htc_himauhl:5.0.2/LRX22G/516731.9:user/release-keys
Verizon 1.33.605 (?)
New ROM and device support are coming~~
If your ROM version is not listed here, please check if any ROM with the same variant is already supported. If the supported one is newer, I suggest go and grab it instead of waiting.
Known Issues:
None
Todo:
Coming next release: (will come after SuperSU version)
TBD
In queue:
Check the workshop thread: http://forum.xda-developers.com/galaxy-s6/general/root-pingpong-root-rom-workshop-thread-t3104639 but DO NOT REPLY UNLESS YOU ARE WORKING ON ROMS. Thank you for keeping that post clean!
Usage
OK, since manual switch is too complex and there are some compatibility issue of Kinguser, I'm making a SuperSU version now.
Note that due to the natural that SuperSU su doesn't ask for permission when SuperSU apk is missing, root will only happen when SuperSU apk has been installed. Read instrucitons below CAREFULLY!
0. Read Q&A section and BACKUP your data.
1. If you already have Kinguser installed please:
a. Open Kinguser, go to Settings -> Root authorization setting -> Remove Root permission. Click to remove root permission
b. Uninstall Kinguser2. Download pingpongroot_<ver>.apk. Install & open it.
3. It will automatically install SuperSU 2.46 for you. Follow the instructions on screen. You may need to enable unknown source for this step.
a. Once install is finished, click “Open" and run it once to "activate" it. It will prompt an error message (unless you already rooted) and exit automatically, bring you back to PingPong root.4. Click "Download Data" button to update device data if you have Internet connection.
5. Open it and click "Get Root!" button
6. If prompted for app permissions, allow them and continue. If it reboots, just retry.
7. Once finished, please make sure to reboot.
8. You can uninstall PingPong root app once finished.
Credits
Vulnerability: memeda, wushi
Original idea of exploit: memeda
Exploit: idl3r, Qoobee
Special thanks to:
Kingroot team (@Kingxteam) for help testing and great root manager
Q&A
Q: How to root 5.1.1 then since PingPong root will never work?
WARNING: User report that fingerprint sensor and incoming call stop working after using the engineering sboot.
A: The classic recovery root method. You shall find details in many other posts. If you are T-Mobile user, lucky for you that there is a leaked engineering bootloader which make root a piece of cake without tripping Knox warranty bit:
http://forum.xda-developers.com/gal...-root-tool-t3103016/post61684664#post61684664
Q: It just keeps rebooting, what can I do?
A: The exploit may panic the kernel and reboot your device. If the data is off, same could happen as well. When issue happens, try these:
a. Clean up background process before running root.
b. Turn on airplane mode after clicking "Download Data".
c. Backup your data and run factory reset.
d. Definitely avoid doing anything else when "wait!!!" appears.If these doesn't help after 5 retries, there could be some issue, please collect the information in /proc/last_kmsg and send it to me.
Note: User reporting installing My Knox or enable other Knox feature (like enterprise provision or KNOX active protection) may cause reboot loop. Be cautious!
Q: My ROM is not yet supported?
A: Since I have limited bandwidth to download ROMs, I have to prioritize ROM requests and focusing on new variants/models first. And currently recruiting volunteers to help download/shrink ROMs.
If you see your ROM FP is not listed, but a very similar one (may be just the last digit or character is different) exists, please see if you can flash that version of ROM. I'm sure you can find someone helping you in corresponding forum.
Q: Will Samsung Pay/My Knox work?
A: To be honest I can't tell for sure. Indeed this root does not trip warranty bit. But it still leaves SU files, which is inevitable, on system partitions. And a lot of root features actually make change to system partition, so let's say it can be detected. If Samsung makes the decision that there will be no certain feature for presence of a su file, then there will be no fun. IMHO this is very bad idea since even Apple doesn't disable anything on jailbreak devices. Let's see what will be the outcome. This makes sense to enterprise uses but for consumers at least a choice should be given.
Q: Note4/Z3/Old Samsung/etc?
A: We also wrote the rooting engine in KingRoot 4.0 for generic 32-bit devices. Give it a try. Note that for some devices like Note4, only temp root is achievable.
Q: Why "PingPong" root?
A: Because the vulnerability affects ping socket and we are Chinese
Q: What's the current status of this tool?
A: Beta. We've thoroughly tested it on ROMs for G9200, but not other variants. You are the 1st batch of beta testers!
Q: Is my device supported?
A: You can check the version of your ROM in "About this phone" page. It shall read LRXxxx following by the ROM version.
This tool checks your ROM version as well. If you read "Your device data is still not supported." after clicking "Get Root!", your device data has not been collected yet. Please reply with your ROM version plus keyword "FPTAG" in this thread.
Q: Will this root trip KNOX warranty bit or disable OTA?
A: No, it won't trip KNOX warranty bit and YES, it will disable OTA. It doesn't require odin to flash in a custom recovery, so the warranty bit will remain intact.
Q: I'd like switching to SuperSU, what shall I do?
A: Kinguser does not have a "swtich" function. Follow these steps to do so manually: (if you are not familiar with adb, see this version: http://forum.xda-developers.com/showpost.php?p=60632150&postcount=269)
1. Download supersu.7z and extract it. You will get the files needed to install Supersu.
2. Using adb to push su and busybox (if not installed) to /data/local/tmp.
Code:
adb push su /data/local/tmp
adb push busybox /data/local/tmp
3. Start a su session and run the following commands:
Code:
mount -o remount,rw /system
cat /data/local/tmp/su >/system/xbin/daemonsu && chmod 0755 /system/xbin/daemonsu
cat /data/local/tmp/busybox >/system/bin/busybox && chmod 0755 /system/bin/busybox
daemonsu -d &
Then keep the session running.
4. Open Kinguser, go to Settings -> Root authorization setting -> Remove Root permission. Click to remove root permission. Your su session should be still running.
5. Uninstall Kinguser app.
6. Go back to the su session and run following commands to replace su and cleanup:
Code:
cat /data/local/tmp/su >/system/xbin/su && chmod 0755 /system/xbin/su
busybox chattr -ia /system/bin/ddexe
busybox chattr -ia /system/bin/ddexe_real
cat /system/bin/ddexe_real >/system/bin/ddexe
busybox chattr -ia /system/xbin/ku.sud
rm /system/xbin/ku.sud
rm /system/xbin/pidof
rm /system/xbin/supolicy
7. Install Supersu apk
8. Open Supersu apk to update files.
9. Reboot.
Q: S6 Edge/G Flex 2/M9/other arm64 devices?
A: We will look into them soon
S6 Edge: Done
M9: WIP
G Flex 2/others: pending
Q: I need a video to guide me through
A: Check out this one: https://youtu.be/_Ezh7Oi-jyM
(Note: these are for earlier version)
https://www.youtube.com/watch?v=gNdWX31Sqd8
and this one: http://youtu.be/eAQ4WBg9xj0
To all sent me PM: I'm sorry that the reply could be delayed. Currently we are busy working on supporting of new ROMs and fixing bugs. To all those providing useful info/suggestion, thanks a ton!
nice work
great!
Holy crap man!!! GREAT WORK!!!!
great work! knox 0x0
You guys are awesome! Patiently waiting for G920FXXU1AODG to be incorporated
Any chance of the ATT variant being rooted?
Japultra said:
You guys are awesome! Patiently waiting for G920FXXU1AODG to be incorporated
Click to expand...
Click to collapse
Downloading the ROM now, mate Will be included in the next Beta which will happen soon enough
Kokorone said:
Any chance of the ATT variant being rooted?
Click to expand...
Click to collapse
Yes, they are waiting for an ATT rom to appear first though.
Wow...can't believe! [emoji33]
Nice work! [emoji106]
Now switched from beta1 to beta5 and SuperSU...worked like a charm!
Titanium Backup is now running how it should.
Yeah...root access until next Update to 5.1.1 [emoji7]
and Knox says 0x0?
Hoping for g920fxxu1a0cw to be included great job mate!
is it possible with G920FXXU1AOD9 french region
G920FXXU1AODG here, will it work for that firmware? (Vodafone Germany)
Joern85 said:
G920FXXU1AODG here, will it work for that firmware? (Vodafone Germany)
Click to expand...
Click to collapse
It's coming in the next update!
---------- Post added at 10:44 AM ---------- Previous post was at 10:43 AM ----------
tutti9372 said:
and Knox says 0x0?
Click to expand...
Click to collapse
You should really read the OP
Q: Will this root trip KNOX warranty bit?
A: No. It doesn't require odin to flash in a custom recovery, so the warranty bit will remain intact.
Click to expand...
Click to collapse
I'm wondering if the vulnerability used here exists on the S6 Edge. Because I don't see anyone posting a SM-925xx Rom and to my understanding SM-920 is normal S6, where as SM-925 is the edge version.
Fantastic work, Idler! Will you publish the source code for this?
cpfeifer said:
I'm wondering if the vulnerability used here exists on the S6 Edge. Because I don't see anyone posting a SM-925xx Rom and to my understanding SM-920 is normal S6, where as SM-925 is the edge version.
Click to expand...
Click to collapse
Oh, I shall update the Q&A section. S6E (and may be other arm64 devices) will be investigated. And vulnerability should still be there for any kernel before 5/3.
idler1984 said:
Oh, I shall update the Q&A section. S6E (and may be other arm64 devices) will be investigated. And vulnerability should still be there for any kernel before 5/3.
Click to expand...
Click to collapse
That's good to hear. My current kernel is from April 10th and I've got the latest ota. Hopefully I can get root before a forced ota is pushed out with a kernel update.
That is truly great work....
and my FAVOURITE
After switching to SuperSU, aps like TitanumBackup, RootExplorer and many probably more works great.
I just edit my "others.xml" and just the begin of having true FUN with my phone
BIG THANKS for ROOT
idler1984 said:
Oh, I shall update the Q&A section. S6E (and may be other arm64 devices) will be investigated. And vulnerability should still be there for any kernel before 5/3.
Click to expand...
Click to collapse
Thanks for your great tool. For us who have tripped knox will it untrip or not.:
Hi
I've made the update Android Wear 2.0 on my LG G Watch R (through the Play Store).
However, i really do not like the new interface and how notifications are now displayed.
Is it possible de downgrade Android Wear to old version 1.5? How should I do that?
Thanks for your help, have a nice day.
nicodvt said:
Hi
I've made the update Android Wear 2.0 on my LG G Watch R (through the Play Store).
However, i really do not like the new interface and how notifications are now displayed.
Is it possible de downgrade Android Wear to old version 1.5? How should I do that?
Thanks for your help, have a nice day.
Click to expand...
Click to collapse
you can flash stock image via fastboot https://forum.xda-developers.com/g-watch-r/development/fastboot-zip-factory-images-t3405311
Thanks @ingbrzy for the advise, I have not found any other easiest solution to downgrade Android Wear 2.0 to Android Wear 1.5.
If it can help others, thi is how I flashed a stock image with Android Wear 1.5 on my LG G Watch R:
Enabled "Developer tools" on my watch
Connected my watch to my computer
Unlocked my bootloader with WinDroid Toolkit
After selected my device, on first screen: "Unlock Bootloader"
Downloaded and installed ADB Installer (v1.4.2)
Downloaded stock images of build "M1D65H" from this topic
Inspirated by this guide, opened a command line prompt and entered the following commands
Code:
fastboot -w
Code:
fastboot flash boot M1D65H_boot.img
Code:
fastboot flash recovery M1D65H_recovery.img
Code:
fastboot flash system M1D65H_system.img
Rebooted my watch with command
Code:
fastboot reboot
That's finished, my watch was again on Android Wear 1.5 <3
After having downgraded, has anyone managed to get rid of the update message?
midafaya said:
After having downgraded, has anyone managed to get rid of the update message?
Click to expand...
Click to collapse
Yeap, I rebooted my watch and had no more the update message.
nicodvt said:
[*] That's finished, my watch was again on Android Wear 1.5 <3
[/LIST]
Click to expand...
Click to collapse
Hi Nicodvt. Thank you for this good summary.
Unfortunatly, our friends from Google have perhaps not performed a lot for the Android Wear 2.0 new features implementation but they are really good in the development of their OTA procedure!
After the downgrade to AW1.5, even after the installation of the Android Wear 1.5 apk smartphone application and settings in Playstore not to automatically update the applications, the "always on" notification on the watch to install the new version of Android Wear 2.0 appeared one day after the downgrade....
See post below to remove the notification.
I have done tried this, not really sure what I am disabling though, but those services look like thay could bring trouble ... We'll see :silly:
Code:
laptop$ adb shell
[email protected]:/ $ su
[email protected]:/ # pm disable com.google.android.gms/.update.SystemUpdateService
Component {com.google.android.gms/com.google.android.gms.update.SystemUpdateService} new state: disabled
[email protected]:/ # pm disable com.google.android.gsf/.update.SystemUpdateService
Component {com.google.android.gsf/com.google.android.gsf.update.SystemUpdateService} new state: disabled
adlx.xda said:
I have done tried this, not really sure what I am disabling though, but those services look like thay could bring trouble ... We'll see :silly:
Code:
laptop$ adb shell
[email protected]:/ $ su
[email protected]:/ # pm disable com.google.android.gms/.update.SystemUpdateService
Component {com.google.android.gms/com.google.android.gms.update.SystemUpdateService} new state: disabled
[email protected]:/ # pm disable com.google.android.gsf/.update.SystemUpdateService
Component {com.google.android.gsf/com.google.android.gsf.update.SystemUpdateService} new state: disabled
Click to expand...
Click to collapse
Ah, that seems to work (for now)!
It removed the notification (after applying and rebooting) and has not reappeared for 45 minutes even after a few reboots.
I confirm these 2 commands seem to remove the upgrade notification.
For information, the creation of an empty update.zip file in the /cache/ folder was not enough and the upgrade notification appeared spontaneously one day later.
Thanks
It's great, I also want to come back the ver 1.5, but i dont have an experience in this field. I have problem in step 2 and try to install the ADT,... but it doesnt work very well. Can I contact to you via facebook or skype? Thank you.
nicodvt said:
Thanks @ingbrzy for the advise, I have not found any other easiest solution to downgrade Android Wear 2.0 to Android Wear 1.5.
If it can help others, thi is how I flashed a stock image with Android Wear 1.5 on my LG G Watch R:
Enabled "Developer tools" on my watch
Connected my watch to my computer
Unlocked my bootloader with WinDroid Toolkit
After selected my device, on first screen: "Unlock Bootloader"
Downloaded and installed ADB Installer (v1.4.2)
Downloaded stock images of build "M1D65H" from this topic
Inspirated by this guide, opened a command line prompt and entered the following commands
Code:
fastboot -w
Code:
fastboot flash boot M1D65H_boot.img
Code:
fastboot flash recovery M1D65H_recovery.img
Code:
fastboot flash system M1D65H_system.img
Rebooted my watch with command
Code:
fastboot reboot
That's finished, my watch was again on Android Wear 1.5 <3
Click to expand...
Click to collapse
dungkr89 said:
It's great, I also want to come back the ver 1.5, but i dont have an experience in this field. I have problem in step 2 and try to install the ADT,... but it doesnt work very well. Can I contact to you via facebook or skype? Thank you.
Click to expand...
Click to collapse
Check your private message @dungkr89 if you want to reach me.
Hi,
If you have some difficulties, I made this memo for me.
Downgrade LG G Watch R and block OTA upgrades
---------------------------------------------
Prepare the PC
--------------
Install adb-setup-1.4.3.exe on the PC
Place in folder (C:/wear for example) all the necessary files :
- M1D65H_boot.img
- M1D65H_recovery.img
- M1D65H_boot_system.img
- SuperSU-v2.78_Lg-G-Watch-R.zip
- twrp-3.0.0-0-Lg-G-Watch-R.img
Prepare the watch and smartphone
--------------------------------
On the smartphone, dissociate and restore factory settings on the watch.
Remove ALL applications on the smartphone in relation with the wear watch (excepted Android wear). This is usefull to avoid a long installation with risk of applications not compatible with the Android Wear version which will be installed on the watch.
Reassociate the watch with the smartphone
On the watch :
Activate developper mode (click 7 times on the build number in version menu)
Then in the developper menu, activate adb degug
Connect the watch to the pc via usb
On the PC :
DOS commands invite
Change directory (cd) to point he folfer where are located the .img files.
Type:
adb devices
// The watch device is present and ready
// Switch the watch in fastboot mode
adb reboot bootloader
adb devices
// If the watch is seen oem locked you have to type:
fastboot oem unlock
// If the watch has not been restored (I recommend to do it before via the smartphone)
//fastboot format userdata
//fastboot format cache
//fastboot format system
Send the firmware to the watch
------------------------------------
fastboot flash boot M1D65H_boot.img
fastboot flash recovery M1D65H_recovery.img
fastboot flash system M1D65H_system.img
Restart the watch via the screen menu
ROOT the watch
--------------
adb reboot bootloader
fastboot flash recovery twrp_xxx.img
//fastboot boot twrp_xxx.img (if command below is rejected)
adb push SuperSU_xxx.zip /sdcard/
// From the watch screen, by typing on the screen and following instructions, move to sdcard folder and install from zip the SuperSU_xxx.zip application
Then, when the patch has been installed (quite long), the watch has restarted. Reconnect to the watch via the PC and adb commands
Deactivate OTA
--------------
adb reboot bootloader
adb devices //to make sure your watch is connected
adb shell
> su
> pm disable com.google.android.gms/.update.SystemUpdateService
> pm disable com.google.android.gsf/.update.SystemUpdateService
> exit
Before to reassociate the watch with the smartphone, eventually, remove the Android Wear application on the smartphone and reinstall the Android Wear V1.5.apk on the smartphone.
Reassociate the watch with the smartphone.
Thanks for this thread! I am having issue getting SU in cmd. I have installed 3 different TWRP and 3 different SuperSU.zip trying to get it to work. I can't seem to get any of them to execute su commands. When trying I get a FC on SuperSU on watch, and adb does nothing after
- adb shell
- su
- then nothing happens, and I eventually get SuperSU FC on watch.
Thanks in advance for the help.
Thanks both for the re-flash guide and the commands for disabling the update service. Had a problem not finding appropriate SU and TWRP images, but after finding them I'm finally free of the damn 2.0 and the update notification too.
SU: SuperSU-2.78-wear.zip
TWRP: twrp-3.0.0-0-lenok+squashfs.img
I did not check any other root-needing apps, and as far as I'm concerned, I'm done with updates for the lifetime of this watch...
nagi603 said:
Thanks both for the re-flash guide and the commands for disabling the update service. Had a problem not finding appropriate SU and TWRP images, but after finding them I'm finally free of the damn 2.0 and the update notification too.
SU: SuperSU-2.78-wear.zip
TWRP: twrp-3.0.0-0-lenok+squashfs.img
I did not check any other root-needing apps, and as far as I'm concerned, I'm done with updates for the lifetime of this watch...
Click to expand...
Click to collapse
That's the su and twrp I have installed on my watch at this time, I am not able to get su commands to execute. Is there something else that needs to be done after installing these? Thanks.
I want to get rid of the automatic upgrade to AW 2.0, so I want to apply the recipe you have kindly shared, but I don´t know how to do it because it is my first time with ADB commands.
I have already ADB installed and USB debugging enabled. I can type "adb devices" and my watch is listed.
The question is how to apply the (two?) commands you suggest.
- Should I type "laptop$ adb shell" ??
- At the $ prompt I have tryed to type "su" but get an error.
- Also: the two commands are "one single line" each, like "...systemUpdateService Component ....", or they are two lines each command?
- Should the watch be rooted to do this ?
Thank you very much.
PD: I have flashed my watch back to AW 1.5 with no problems, using the instructions given in this link:
https://forum.xda-developers.com/g-watch-r/general/andorid-wear-2-0-t3382032/page23
adlx.xda said:
I have done tried this, not really sure what I am disabling though, but those services look like thay could bring trouble ... We'll see :silly:
Code:
laptop$ adb shell
[email protected]:/ $ su
[email protected]:/ # pm disable com.google.android.gms/.update.SystemUpdateService
Component {com.google.android.gms/com.google.android.gms.update.SystemUpdateService} new state: disabled
[email protected]:/ # pm disable com.google.android.gsf/.update.SystemUpdateService
Component {com.google.android.gsf/com.google.android.gsf.update.SystemUpdateService} new state: disabled
Click to expand...
Click to collapse
[/COLOR]
paggps said:
I want to get rid of the automatic upgrade to AW 2.0, so I want to apply the recipe you have kindly shared, but I don´t know how to do it because it is my first time with ADB commands.
I have already ADB installed and USB debugging enabled. I can type "adb devices" and my watch is listed.
The question is how to apply the (two?) commands you suggest.
- Should I type "laptop$ adb shell" ??
- At the $ prompt I have tryed to type "su" but get an error.
- Also: the two commands are "one single line" each, like "...systemUpdateService Component ....", or they are two lines each command?
- Should the watch be rooted to do this ?
Thank you very much.
PD: I have flashed my watch back to AW 1.5 with no problems, using the instructions given in this link:
https://forum.xda-developers.com/g-watch-r/general/andorid-wear-2-0-t3382032/page23
I have done tried this, not really sure what I am disabling though, but those services look like thay could bring trouble ... We'll see :silly:
Click to expand...
Click to collapse
The commands are single lines, and it will require root. Make sure you use twrp listed above, and super su 2.78 for wear, also listed above.
It's clear that the downgrade to AW1.5 is quite easy. However, it's less obvious to block the OTA!
For that, it's mandatory to root the Watch and I didn't find a clear notice to do it. After many atempts, I did it without clearly understand how I made it!!!! But it's done, and the upgrade notification has disappeared.
I wrote my onwn notice (in case I want to try again in few months a new attempt to test for instance the next AW2.1...) here.
Somebody in this forum could write a full clean procedure for newbie with all the links to do the downgrade and OTA disabling in one shot with a 100% success.
nicodvt said:
Thanks @ingbrzy for the advise, I have not found any other easiest solution to downgrade Android Wear 2.0 to Android Wear 1.5.
If it can help others, thi is how I flashed a stock image with Android Wear 1.5 on my LG G Watch R:
Enabled "Developer tools" on my watch
Connected my watch to my computer
Unlocked my bootloader with WinDroid Toolkit
After selected my device, on first screen: "Unlock Bootloader"
Downloaded and installed ADB Installer (v1.4.2)
Downloaded stock images of build "M1D65H" from this topic
Inspirated by this guide, opened a command line prompt and entered the following commands
Code:
fastboot -w
Code:
fastboot flash boot M1D65H_boot.img
Code:
fastboot flash recovery M1D65H_recovery.img
Code:
fastboot flash system M1D65H_system.img
Rebooted my watch with command
Code:
fastboot reboot
That's finished, my watch was again on Android Wear 1.5 <3
Click to expand...
Click to collapse
Hi,
Using you guide to go back to 1.5 on g watch r but im stuck on step 6......
Only thing i can do in adb i type Y and nothing else?
Hi,
I try follow your steps, everything seems to be fine. But after last command 'fastboot reboot' I am still booting to fastboot. Please do you know what can be wrong here?
Thanks
Dear Sirs
It has been almost 2 years since I got my Nexus 6P, and I always disable the navigation bar for a better usage. Before Oreo I added 'qemu.hw.mainkeys = 1' on Build Pro file via root file explorer. But it no longer worked, If I did, the system will collapse and I have to reflash the system. So is there any new way to disable the navigation entirely on Oreo.
Many thanks.
Best Regards
ChaoChao
I am interested in auto hiding the nav keys. I had a method that worked, but had phone replaced last week, and the upgrade to OREO. I had tried using the adb command:
adb shell settings put global policy_control immersive.navigation=*
But this command returns an error about Failed executing settings. ''
I have tried Tiles, but that has some annoying lag.
dratsablive said:
I am interested in auto hiding the nav keys. I had a method that worked, but had phone replaced last week, and the upgrade to OREO. I had tried using the adb command:
adb shell settings put global policy_control immersive.navigation=*
But this command returns an error about Failed executing settings. ''
I have tried Tiles, but that has some annoying lag.
Click to expand...
Click to collapse
So sad. thanks for your help though.
dratsablive said:
I am interested in auto hiding the nav keys. I had a method that worked, but had phone replaced last week, and the upgrade to OREO. I had tried using the adb command:
adb shell settings put global policy_control immersive.navigation=*
But this command returns an error about Failed executing settings. ''
I have tried Tiles, but that has some annoying lag.
Click to expand...
Click to collapse
Try issuing the command
adb shell settings list global
to see if that setting still exists.
stevemw said:
Try issuing the command
adb shell settings list global
to see if that setting still exists.
Click to expand...
Click to collapse
I was trying to execute the command
adb shell settings put global policy_control immersive.navigation=*
from a terminal on the phone, but executing this command on my laptop while connected to phone worked
Anyone can please help..!!!!
In android 8.0 (oreo),i am unable to hide soft keys using "qemu.hw.mainkeys=1".since after this my phone starts doing data factory reset,next time it boots.
I tried immersive mode but soft keys alwayas pops up while using keyboard.
Also tried themer.zip from some xda link,it does hide the soft keys but swipe at bottom where softkeys are seems laggy while performing swipe action in LMT launcher.
There's an app called custom navigation bar, you can try it out, after you did your setup you can even uninstall it.
i install custom navigation bar app,but it failed compatibilty test,what to do now???
I dont want to hide the nav bar. I want to completely disable it so it wont pop up at all anywhere. I'll be using swipe navigation.
lemonspeakers said:
I dont want to hide the nav bar. I want to completely disable it so it wont pop up at all anywhere. I'll be using swipe navigation.
Click to expand...
Click to collapse
I want to disable it as well. Pie Control is great.
Any solution yet to disable the navigation bar on Oreo 8.x?
phedoreanu said:
I want to disable it as well. Pie Control is great.
Any solution yet to disable the navigation bar on Oreo 8.x?
Click to expand...
Click to collapse
If you are rooted stock Feb update you can flash this. A restore zip should be created in a folder called ozop on your sdcard.