14

Developer Options can be enabled by tapping 7 times on build number. I am using

adb shell input tap x y command to tap on build number. is there any adb command to tap on build number 7 times?

RVR
  • 651
  • 2
  • 6
  • 14
  • 1
    Please check this Question : https://stackoverflow.com/questions/18269769/how-to-enable-stay-awake-in-the-developer-options-using-adb – Kuldeep Raj Nov 27 '17 at 11:47
  • Hi @kuldeepraj with "adb shell am start -n com.android.settings/.DevelopmentSettings" you can open the developer options but the user want have the developer optiones enabled (I think) – vjsantojaca Nov 27 '17 at 14:45

2 Answers2

21

much easier way:

adb shell settings put global development_settings_enabled 1
Alex P.
  • 30,437
  • 17
  • 118
  • 169
  • And for disable? I tried `adb shell settings put global development_settings_enabled 0` but it doesn't work – Benjamin Lucidarme Dec 12 '17 at 13:31
  • 4
    I think this has changed, starting with Android 4.2. Anyway, this answer doesn't work for me on Android 7.1, but @Olaia's does. – evadeflow May 05 '18 at 18:30
  • 2
    the chicken and egg problem ... if development_settings aren't enabled, adb can't connect ;) – childno͡.de Sep 18 '20 at 13:53
  • This answer still works on `Android 11` and `Android 12 Beta`. But note that as @ childno͡.de mentioned `Developer options` have to be enabled at least once for device to be recognised by the computer and the above command can then be executed for disabling/enabling the options. – Siju Aug 09 '21 at 16:20
5

That info is stored in a shared preference of the settings app. Which is located at: /data/user_de/0/com.android.settings/shared_prefs/development.xml it has a boolean named show stored, if set to true, developer options is shown, gone otherwise.

If device IS ROOTED, you could do:

  1. adb root
  2. adb shell sed -i -e 's/false/true/g' data/user_de/0/com.android.settings/shared_prefs/development.xml
  3. adb shell chown system:system data/user_de/0/com.android.settings/shared_prefs/development.xml
  4. adb shell cat data/user_de/0/com.android.settings/shared_prefs/development.xml
  5. adb shell am force-stop com.android.settings

This is the explanation for each command:

  1. Make sure we are root
  2. We intend to change the value from false to true. There is only this value stored in that XML, in that sense it's save for now.
  3. Change the owner and group to system, because after we modified it, it was set to root:root.
  4. Verify the value is correctly set. (could be done before step 3, it doesn't matter)
  5. Kill settings app so we force it to read the value again.

If device is NOT rooted, I can not think of a way to accomplish this.

Even if we have a rooted device, this method is way longer than doing 7 keyevents through adb (after a swipe to the end). So I think you're better off with your current method. (Sorry to say)

Olaia
  • 2,172
  • 25
  • 27