-
-
Save Pulimet/5013acf2cd5b28e55036c82c91bd56d8 to your computer and use it in GitHub Desktop.
Hi All! | |
I've recently launched a tool that wraps many of the commands here with a user interface. This desktop application is currently available for macOS. There's a roadmap outlining planned features for the near future. | |
Feel free to request any features you'd like to see, and I'll prioritize them accordingly. | |
One of the most important aspects of this application is that every command executed behind the scenes is displayed in a special log section. This allows you to see exactly what’s happening and learn from it. | |
Here's the link to the repository: https://github.com/Pulimet/ADBugger | |
App Description: | |
ADBugger is a desktop tool designed for debugging and QA of Android devices and emulators. It simplifies testing, debugging, and performance analysis by offering device management, automated testing, log analysis, and remote control capabilities. This ensures smooth app performance across various setups. | |
============================= | |
adb help // List all comands | |
== Adb Server | |
adb kill-server | |
adb start-server | |
== Adb Reboot | |
adb reboot | |
adb reboot recovery | |
adb reboot-bootloader | |
adb root //restarts adb with root permissions | |
== Shell | |
adb shell // Open or run commands in a terminal on the host Android device. | |
== Devices | |
adb usb | |
adb devices //show devices attached | |
adb devices -l //devices (product/model) | |
adb connect ip_address_of_device | |
== Get device android version | |
adb shell getprop ro.build.version.release | |
== LogCat | |
adb logcat | |
adb logcat -c // clear // The parameter -c will clear the current logs on the device. | |
adb logcat -d > [path_to_file] // Save the logcat output to a file on the local system. | |
adb bugreport > [path_to_file] // Will dump the whole device information like dumpstate, dumpsys and logcat output. | |
== Files | |
adb push [source] [destination] // Copy files from your computer to your phone. | |
adb pull [device file location] [local file location] // Copy files from your phone to your computer. | |
== App install | |
adb -e install path/to/app.apk | |
-d - directs command to the only connected USB device... | |
-e - directs command to the only running emulator... | |
-s <serial number> ... | |
-p <product name or path> ... | |
The flag you decide to use has to come before the actual adb command: | |
adb devices | tail -n +2 | cut -sf 1 | xargs -IX adb -s X install -r com.myAppPackage // Install the given app on all connected devices. | |
== Uninstalling app from device | |
adb uninstall com.myAppPackage | |
adb uninstall <app .apk name> | |
adb uninstall -k <app .apk name> -> "Uninstall .apk withour deleting data" | |
adb shell pm uninstall com.example.MyApp | |
adb shell pm clear [package] // Deletes all data associated with a package. | |
adb devices | tail -n +2 | cut -sf 1 | xargs -IX adb -s X uninstall com.myAppPackage //Uninstall the given app from all connected devices | |
== Update app | |
adb install -r yourApp.apk // -r means re-install the app and keep its data on the device. | |
adb install –k <.apk file path on computer> | |
== Home button | |
adb shell am start -W -c android.intent.category.HOME -a android.intent.action.MAIN | |
== Activity Manager | |
adb shell am start -a android.intent.action.VIEW | |
adb shell am broadcast -a 'my_action' | |
adb shell am start -a android.intent.action.CALL -d tel:+972527300294 // Make a call | |
// Open send sms screen with phone number and the message: | |
adb shell am start -a android.intent.action.SENDTO -d sms:+972527300294 --es sms_body "Test --ez exit_on_sent false | |
// Reset permissions | |
adb shell pm reset-permissions -p your.app.package | |
adb shell pm grant [packageName] [ Permission] // Grant a permission to an app. | |
adb shell pm revoke [packageName] [ Permission] // Revoke a permission from an app. | |
// Emulate device | |
adb shell wm size 2048x1536 | |
adb shell wm density 288 | |
// And reset to default | |
adb shell wm size reset | |
adb shell wm density reset | |
== Print text | |
adb shell input text 'Wow, it so cool feature' | |
== Screenshot | |
adb shell screencap -p /sdcard/screenshot.png | |
$ adb shell | |
shell@ $ screencap /sdcard/screen.png | |
shell@ $ exit | |
$ adb pull /sdcard/screen.png | |
--- | |
adb shell screenrecord /sdcard/NotAbleToLogin.mp4 | |
$ adb shell | |
shell@ $ screenrecord --verbose /sdcard/demo.mp4 | |
(press Control + C to stop) | |
shell@ $ exit | |
$ adb pull /sdcard/demo.mp4 | |
== Key event | |
adb shell input keyevent 3 // Home btn | |
adb shell input keyevent 4 // Back btn | |
adb shell input keyevent 5 // Call | |
adb shell input keyevent 6 // End call | |
adb shell input keyevent 26 // Turn Android device ON and OFF. It will toggle device to on/off status. | |
adb shell input keyevent 27 // Camera | |
adb shell input keyevent 64 // Open browser | |
adb shell input keyevent 66 // Enter | |
adb shell input keyevent 67 // Delete (backspace) | |
adb shell input keyevent 207 // Contacts | |
adb shell input keyevent 220 / 221 // Brightness down/up | |
adb shell input keyevent 277 / 278 /279 // Cut/Copy/Paste | |
0 --> "KEYCODE_0" | |
1 --> "KEYCODE_SOFT_LEFT" | |
2 --> "KEYCODE_SOFT_RIGHT" | |
3 --> "KEYCODE_HOME" | |
4 --> "KEYCODE_BACK" | |
5 --> "KEYCODE_CALL" | |
6 --> "KEYCODE_ENDCALL" | |
7 --> "KEYCODE_0" | |
8 --> "KEYCODE_1" | |
9 --> "KEYCODE_2" | |
10 --> "KEYCODE_3" | |
11 --> "KEYCODE_4" | |
12 --> "KEYCODE_5" | |
13 --> "KEYCODE_6" | |
14 --> "KEYCODE_7" | |
15 --> "KEYCODE_8" | |
16 --> "KEYCODE_9" | |
17 --> "KEYCODE_STAR" | |
18 --> "KEYCODE_POUND" | |
19 --> "KEYCODE_DPAD_UP" | |
20 --> "KEYCODE_DPAD_DOWN" | |
21 --> "KEYCODE_DPAD_LEFT" | |
22 --> "KEYCODE_DPAD_RIGHT" | |
23 --> "KEYCODE_DPAD_CENTER" | |
24 --> "KEYCODE_VOLUME_UP" | |
25 --> "KEYCODE_VOLUME_DOWN" | |
26 --> "KEYCODE_POWER" | |
27 --> "KEYCODE_CAMERA" | |
28 --> "KEYCODE_CLEAR" | |
29 --> "KEYCODE_A" | |
30 --> "KEYCODE_B" | |
31 --> "KEYCODE_C" | |
32 --> "KEYCODE_D" | |
33 --> "KEYCODE_E" | |
34 --> "KEYCODE_F" | |
35 --> "KEYCODE_G" | |
36 --> "KEYCODE_H" | |
37 --> "KEYCODE_I" | |
38 --> "KEYCODE_J" | |
39 --> "KEYCODE_K" | |
40 --> "KEYCODE_L" | |
41 --> "KEYCODE_M" | |
42 --> "KEYCODE_N" | |
43 --> "KEYCODE_O" | |
44 --> "KEYCODE_P" | |
45 --> "KEYCODE_Q" | |
46 --> "KEYCODE_R" | |
47 --> "KEYCODE_S" | |
48 --> "KEYCODE_T" | |
49 --> "KEYCODE_U" | |
50 --> "KEYCODE_V" | |
51 --> "KEYCODE_W" | |
52 --> "KEYCODE_X" | |
53 --> "KEYCODE_Y" | |
54 --> "KEYCODE_Z" | |
55 --> "KEYCODE_COMMA" | |
56 --> "KEYCODE_PERIOD" | |
57 --> "KEYCODE_ALT_LEFT" | |
58 --> "KEYCODE_ALT_RIGHT" | |
59 --> "KEYCODE_SHIFT_LEFT" | |
60 --> "KEYCODE_SHIFT_RIGHT" | |
61 --> "KEYCODE_TAB" | |
62 --> "KEYCODE_SPACE" | |
63 --> "KEYCODE_SYM" | |
64 --> "KEYCODE_EXPLORER" | |
65 --> "KEYCODE_ENVELOPE" | |
66 --> "KEYCODE_ENTER" | |
67 --> "KEYCODE_DEL" | |
68 --> "KEYCODE_GRAVE" | |
69 --> "KEYCODE_MINUS" | |
70 --> "KEYCODE_EQUALS" | |
71 --> "KEYCODE_LEFT_BRACKET" | |
72 --> "KEYCODE_RIGHT_BRACKET" | |
73 --> "KEYCODE_BACKSLASH" | |
74 --> "KEYCODE_SEMICOLON" | |
75 --> "KEYCODE_APOSTROPHE" | |
76 --> "KEYCODE_SLASH" | |
77 --> "KEYCODE_AT" | |
78 --> "KEYCODE_NUM" | |
79 --> "KEYCODE_HEADSETHOOK" | |
80 --> "KEYCODE_FOCUS" | |
81 --> "KEYCODE_PLUS" | |
82 --> "KEYCODE_MENU" | |
83 --> "KEYCODE_NOTIFICATION" | |
84 --> "KEYCODE_SEARCH" | |
85 --> "KEYCODE_MEDIA_PLAY_PAUSE" | |
86 --> "KEYCODE_MEDIA_STOP" | |
87 --> "KEYCODE_MEDIA_NEXT" | |
88 --> "KEYCODE_MEDIA_PREVIOUS" | |
89 --> "KEYCODE_MEDIA_REWIND" | |
90 --> "KEYCODE_MEDIA_FAST_FORWARD" | |
91 --> "KEYCODE_MUTE" | |
92 --> "KEYCODE_PAGE_UP" | |
93 --> "KEYCODE_PAGE_DOWN" | |
94 --> "KEYCODE_PICTSYMBOLS" | |
... | |
122 --> "KEYCODE_MOVE_HOME" | |
123 --> "KEYCODE_MOVE_END" | |
// https://developer.android.com/reference/android/view/KeyEvent.html | |
== ShPref | |
# replace org.example.app with your application id | |
# Add a value to default shared preferences. | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key key_name --es value "hello world!"' | |
# Remove a value to default shared preferences. | |
adb shell 'am broadcast -a org.example.app.sp.REMOVE --es key key_name' | |
# Clear all default shared preferences. | |
adb shell 'am broadcast -a org.example.app.sp.CLEAR --es key key_name' | |
# It's also possible to specify shared preferences file. | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es name Game --es key level --ei value 10' | |
# Data types | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key string --es value "hello world!"' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key boolean --ez value true' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key float --ef value 3.14159' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key int --ei value 2015' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key long --el value 9223372036854775807' | |
# Restart application process after making changes | |
adb shell 'am broadcast -a org.example.app.sp.CLEAR --ez restart true' | |
== Monkey | |
adb shell monkey -p com.myAppPackage -v 10000 -s 100 // monkey tool is generating 10.000 random events on the real device | |
== Paths | |
/data/data/<package>/databases (app databases) | |
/data/data/<package>/shared_prefs/ (shared preferences) | |
/data/app (apk installed by user) | |
/system/app (pre-installed APK files) | |
/mmt/asec (encrypted apps) (App2SD) | |
/mmt/emmc (internal SD Card) | |
/mmt/adcard (external/Internal SD Card) | |
/mmt/adcard/external_sd (external SD Card) | |
adb shell ls (list directory contents) | |
adb shell ls -s (print size of each file) | |
adb shell ls -R (list subdirectories recursively) | |
== Device onformation | |
adb get-statе (print device state) | |
adb get-serialno (get the serial number) | |
adb shell dumpsys iphonesybinfo (get the IMEI) | |
adb shell netstat (list TCP connectivity) | |
adb shell pwd (print current working directory) | |
adb shell dumpsys battery (battery status) | |
adb shell pm list features (list phone features) | |
adb shell service list (list all services) | |
adb shell dumpsys activity <package>/<activity> (activity info) | |
adb shell ps (print process status) | |
adb shell wm size (displays the current screen resolution) | |
dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp' (print current app's opened activity) | |
== Package info | |
adb shell list packages (list package names) | |
adb shell list packages -r (list package name + path to apks) | |
adb shell list packages -3 (list third party package names) | |
adb shell list packages -s (list only system packages) | |
adb shell list packages -u (list package names + uninstalled) | |
adb shell dumpsys package packages (list info on all apps) | |
adb shell dump <name> (list info on one package) | |
adb shell path <package> (path to the apk file) | |
==Configure Settings Commands | |
adb shell dumpsys battery set level <n> (change the level from 0 to 100) | |
adb shell dumpsys battery set status<n> (change the level to unknown, charging, discharging, not charging or full) | |
adb shell dumpsys battery reset (reset the battery) | |
adb shell dumpsys battery set usb <n> (change the status of USB connection. ON or OFF) | |
adb shell wm size WxH (sets the resolution to WxH) | |
== Device Related Commands | |
adb reboot-recovery (reboot device into recovery mode) | |
adb reboot fastboot (reboot device into recovery mode) | |
adb shell screencap -p "/path/to/screenshot.png" (capture screenshot) | |
adb shell screenrecord "/path/to/record.mp4" (record device screen) | |
adb backup -apk -all -f backup.ab (backup settings and apps) | |
adb backup -apk -shared -all -f backup.ab (backup settings, apps and shared storage) | |
adb backup -apk -nosystem -all -f backup.ab (backup only non-system apps) | |
adb restore backup.ab (restore a previous backup) | |
adb shell am start|startservice|broadcast <INTENT>[<COMPONENT>] | |
-a <ACTION> e.g. android.intent.action.VIEW | |
-c <CATEGORY> e.g. android.intent.category.LAUNCHER (start activity intent) | |
adb shell am start -a android.intent.action.VIEW -d URL (open URL) | |
adb shell am start -t image/* -a android.intent.action.VIEW (opens gallery) | |
== Logs | |
adb logcat [options] [filter] [filter] (view device log) | |
adb bugreport (print bug reports) | |
== Other | |
adb backup // Create a full backup of your phone and save to the computer. | |
adb restore // Restore a backup to your phone. | |
adb sideload // Push and flash custom ROMs and zips from your computer. | |
fastboot devices | |
// Check connection and get basic information about devices connected to the computer. | |
// This is essentially the same command as adb devices from earlier. | |
//However, it works in the bootloader, which ADB does not. Handy for ensuring that you have properly established a connection. | |
-------------------------------------------------------------------------------- | |
Shared Preferences | |
# replace org.example.app with your application id | |
# Add a value to default shared preferences. | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key key_name --es value "hello world!"' | |
# Remove a value to default shared preferences. | |
adb shell 'am broadcast -a org.example.app.sp.REMOVE --es key key_name' | |
# Clear all default shared preferences. | |
adb shell 'am broadcast -a org.example.app.sp.CLEAR --es key key_name' | |
# It's also possible to specify shared preferences file. | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es name Game --es key level --ei value 10' | |
# Data types | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key string --es value "hello world!"' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key boolean --ez value true' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key float --ef value 3.14159' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key int --ei value 2015' | |
adb shell 'am broadcast -a org.example.app.sp.PUT --es key long --el value 9223372036854775807' | |
# Restart application process after making changes | |
adb shell 'am broadcast -a org.example.app.sp.CLEAR --ez restart true' | |
-------------------------------------------------------------------------------- | |
=== Few bash snippets === | |
@Source (https://jonfhancock.com/bash-your-way-to-better-android-development-1169bc3e0424) | |
=== Using tail -n | |
//Use tail to remove the first line. Actually two lines. The first one is just a newline. The second is “List of devices attached.” | |
$ adb devices | tail -n +2 | |
=== Using cut -sf | |
// Cut the last word and any white space off the end of each line. | |
$ adb devices | tail -n +2 | cut -sf -1 | |
=== Using xargs -I | |
// Given the -I option, xargs will perform an action for each line of text that we feed into it. | |
// We can give the line a variable name to use in commands that xargs can execute. | |
$ adb devices | tail -n +2 | cut -sf -1 | xargs -I X echo X aw yiss | |
=== Three options below together | |
// Will print android version of all connected devices | |
adb devices | tail -n +2 | cut -sf -1 | xargs -I X adb -s X shell getprop ro.build.version.release | |
=== Using alias | |
-- Example 1 | |
alias tellMeMore=echo | |
tellMeMore "hi there" | |
Output => hi there | |
-- Example 2 | |
// Define alias | |
alias apkinstall="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X install -r $1" | |
// And you can use it later | |
apkinstall ~/Downloads/MyAppRelease.apk // Install an apk on all devices | |
-- Example 3 | |
alias rmapp="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X uninstall $1" | |
rmapp com.example.myapp // Uninstall a package from all devices | |
-- Example 4 | |
alias clearapp="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X shell pm clear $1" | |
clearapp com.example.myapp // Clear data on all devices (leave installed) | |
-- Example 5 | |
alias startintent="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X shell am start $1" | |
startintent https://twitter.com/JonFHancock // Launch a deep link on all devices | |
Setting up your .bash_profile | |
Finally, to make this all reusable even after rebooting your computer (aliases only last through the current session), we have to add these to your .bash_profile. You might or might not already have a .bash_profile, so let’s make sure we append to it rather than overwriting it. Just open a terminal, and run the following command | |
touch .bash_profile && open .bash_profile | |
This will create it if it doesn’t already exist, and open it in a text editor either way. Now just copy and paste all of the aliases into it, save, and close. | |
alias startintent="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X shell am start $1" | |
alias apkinstall="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X install -r $1" | |
alias rmapp="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X uninstall $1" | |
alias clearapp="adb devices | tail -n +2 | cut -sf 1 | xargs -I X adb -s X shell pm clear $1" | |
=============================================================== | |
Sources: | |
- Internet | |
- https://www.automatetheplanet.com/adb-cheat-sheet/ |
I tested this code in Android 7, exactly in Beelink GS1, it really is not Android TV, it's usually android versions used for tableds
RegardCheck your settings for hdmi.
audioManager.setParameters("audio_devices_out_active=AUDIO_HDMI");
| This line sets the active audio output device to HDMI.I think you must go low level for succeed with this and it is really hard to know but if you are really a hardcode hacker and wanna go deep monitor /proc and /sys dirs when you changing output and you willl probably see wich file has been updated recently if you are quick.
Howevert, using setParameters() with custom string parameters is somewhat unconventional and may not be officially supported or documented by Android. This means the behavior could vary between devices or Android versions, and there is a risk that it might not work consistently across all Android TV devices.
You might can find something useful with:
echo "system\nglobal\nsecure" | xargs -n 1 settings list|grep audioPlease notice to make the settings updated in realtime you should use content input or output for
content insert --uri content://system/settings/...
in adb for example
Thanks for help 😀, this level is so high for, anyway I got work in this device and I gave it to my brother, so I can't test on this device
is there any command to set current_user name ?
how can i do "adb install --bypass-low-target-sdk-block /storage/emulated/0/1.apk" from adb shell, i did tried "pm install --bypass-low-target-sdk-block /storage/6235-3232/1.apk" but did not work
Hi!
I was wondering if there's any way to enable (or actually force) OTG compatibility via ADB, I'm on Android 12 without root, not sure if it helps but the device is a Tecno Pova 4.
Regards
Hey i have a FireTV and want to turn off the tv it is connected to. I have the FireTV in my HomeAssistant and im sending adb commands trough it. If i power it off trough HA the stick only goes in standby and the tv is still powered on. I know its possible the the stick turns off the tv since i can say to alexa "turn off tv" and the stick turns the tv off. I tried some commands like input or echo 0x40 0x36 but nothing worked so far. Any suggestions what i could else do?
Why not use FireStick remote contro?
Hey i have a FireTV and want to turn off the tv it is connected to. I have the FireTV in my HomeAssistant and im sending adb commands trough it. If i power it off trough HA the stick only goes in standby and the tv is still powered on. I know its possible the the stick turns off the tv since i can say to alexa "turn off tv" and the stick turns the tv off. I tried some commands like input or echo 0x40 0x36 but nothing worked so far. Any suggestions what i could else do?
Because i want to automate some things and i cant do that with the remote
Why not use FireStick remote contro?
Hey i have a FireTV and want to turn off the tv it is connected to. I have the FireTV in my HomeAssistant and im sending adb commands trough it. If i power it off trough HA the stick only goes in standby and the tv is still powered on. I know its possible the the stick turns off the tv since i can say to alexa "turn off tv" and the stick turns the tv off. I tried some commands like input or echo 0x40 0x36 but nothing worked so far. Any suggestions what i could else do?
Hey i have a FireTV and want to turn off the tv it is connected to. I have the FireTV in my HomeAssistant and im sending adb commands trough it. If i power it off trough HA the stick only goes in standby and the tv is still powered on. I know its possible the the stick turns off the tv since i can say to alexa "turn off tv" and the stick turns the tv off. I tried some commands like input or echo 0x40 0x36 but nothing worked so far. Any suggestions what i could else do?
You can try using adb shell the command getevent, maybe it can capture event poweroff from remote control and then use sendevent to replicate event
Here is a script of mine you can use for getevent , it will capture all touches and create the adb shell commands in realtime.
- Generator
adb shell getevent -l | awk '
/EV_ABS/ {
event[$3] = strtonum("0x" $NF)
}
/EV_SYN/ {
if (event["ABS_MT_POSITION_X"] && event["ABS_MT_POSITION_Y"]) {
printf "adb shell input touchscreen swipe %d %d %d %d 1000\n",
event["ABS_MT_POSITION_X"], event["ABS_MT_POSITION_Y"],
event["ABS_MT_POSITION_X"], event["ABS_MT_POSITION_Y"]
}
}
Hi.
There is a way to push a file (via adb push) to system/etc folder, on non-rooted Android 14 (Samsung S22)? The system is read-only, so there is no way to push a file, right? Or push function is another thing than copy/paste?
Hello, Is there a way to display the "apps & channel" menu on the Fire TV?
Thanks.
adb shell am start -d "amzn://apps/android?a_lib"
Hi. There is a way to push a file (via adb push) to system/etc folder, on non-rooted Android 14 (Samsung S22)? The system is read-only, so there is no way to push a file, right? Or push function is another thing than copy/paste?
You are correct, there is no way to bypass this. /system path holds locksettings.db and other folders so that would be a big security issue if that was possible.
How do I find the full path for executing the adb pull command when I plug my Android phone to my windows machine?
adb pull [device file location] [local file location] // Copy files from your phone to your computer.
What do I have to do to find the "device file location" ?
How do I find the full path for executing the adb pull command when I plug my Android phone to my windows machine?
adb pull [device file location] [local file location] // Copy files from your phone to your computer.
What do I have to do to find the "device file location" ?
you can use /sdcard/[yourfile here] or /storage/self/primary/(internal storage located near the file /storage, you can find the internal storage first). ex: u want store file yourfile.png to /sdcard/pictures/ u must use this command adb pull /sdcard/pictures /[wherethepictures]/yourfile.png
Is there anyway to idendify at which coordinates the screen was touch in a specific app in a given timeframe?
How do I find the full path for executing the adb pull command when I plug my Android phone to my windows machine?
adb pull [device file location] [local file location] // Copy files from your phone to your computer.
What do I have to do to find the "device file location" ?
I'm not sure if I get this right maybe @ItzKazuki answer is the one you looking for, however if you want to find a file and where it is stored on the device, you can use find
adb shell find /sdcard -iname "*file*" -type f
When the file is found, use the above command from @ItzKazuki for "pull" the file to your pc
How do I find the full path for executing the adb pull command when I plug my Android phone to my windows machine?
adb pull [device file location] [local file location] // Copy files from your phone to your computer.
What do I have to do to find the "device file location" ?you can use /sdcard/[yourfile here] or /storage/self/primary/(internal storage located near the file /storage, you can find the internal storage first). ex: u want store file yourfile.png to /sdcard/pictures/ u must use this command
adb pull /sdcard/pictures /[wherethepictures]/yourfile.png
Thank you so much. I dont even have a sdcard, but the path worked fine. I did a adb pull request on my 110 GB large DCIM folder and it took me like 4 hours to transfer the files.
What would I do if I want to do another backup but without copying all over again?
Maybe also copying only the files that are different from the old stack and also put the new files into another directory so the folder gets not bigger and bigger each time?
You guys are very smart, I like that!
Hi guys.
Thanks for the instructions.
Im still seeking some instructions about adb shell cmd
function list.
Any suggestions or references?
Hi guys. Thanks for the instructions. Im still seeking some instructions about
adb shell cmd
function list. Any suggestions or references?
What are your suggestions? Want me to jazz up the command options, wuseman style?
Check this out, it's blazing fast, over 100% quicker than the boring old default.
Execute -h
on all options in cmd list for find valid commands in shell
cmd -l | xargs -n 1 -P $(( $(nproc) + 1 )) sh -c 'cmd "$0" -h' 2>/dev/null
Dump all cmd commands with -h option ready to use
cmd -l | xargs -n 1 -P $(( $(nproc) + 1 )) sh -c 'echo "cmd $0" -h' 2>/dev/null
is there a way to allow access to android\data folder? i have android 14, can access, even with pc, copy paste fails.
plz tell a way, even if it does only work with PC.
is there a way to allow access to android\data folder? i have android 14, can access, even with pc, copy paste fails. plz tell a way, it should work without pc, even if it does only work with PC.
Impossible I guess?
Hey @wuseman,
Wow, what a journey it's been over the years! Your guidance and expertise have truly been a beacon for many of us navigating the complexities of ADB and beyond.
Your knack for mastering new challenges and pushing the envelope in this field has set a benchmark that's incredibly inspiring. The way you've shared your insights, always venturing into new territories with curiosity and rigor, has made a lasting impact.
I just wanted to take a moment to sincerely thank you for all the wisdom you've shared here on GitHub. Your presence has not only enriched our knowledge but has also sparked a passion for exploration and innovation in so many of us.
As you venture into new endeavors beyond GitHub, I wish you nothing but the best. May your journey be filled with excitement, success, and endless opportunities for growth.
And let me just say, the way you've showcased the use of cmd commands in such a detailed and practical manner is nothing short of remarkable!
cmd -l | xargs -n 1 -P $(( $(nproc) + 1 )) sh -c 'cmd "$0" -h' 2>/dev/null
Is just insane! This will also skip everything that is not available.
Take care, and once again, a massive thank you
is there any command to set current_user name ?
No.
Is there anyway to idendify at which coordinates the screen was touch in a specific app in a given timeframe?
No!
Command for IMEI number returns with Can't find service: iphonesybinfo
. I think its supposed to be adb shell dumpsys iphonesubinfo
but that just returns nothing as well.
Is there an ADB command to disable a broadcast receiver of a specific app? Just as autostarts app does it using root, but I want to do it using ADB since my device isn't rooted.
For Android 12 and up (including latest Android 14 update), system files are "read only" and do not support copy, replacing or editing even if the phone is rooted. You can get the root access (via Magisk, etc), you can see the system files, and... this is all you can do. What you have to do is making the system partition RW. For some phones will work, but for most of them, not.
…
________________________________ From: DARK7BEA5T @.> Sent: Saturday, April 13, 2024 17:12 To: DARK7BEA5T @.> Cc: Comment @.***> Subject: Re: Pulimet/AdbCommands @DARK7BEA5T commented on this gist.
________________________________ is there a way to allow access to android\data folder? i have android 14, can access, even with pc, copy paste fails. plz tell a way, it should work without pc, even if it does only work with PC. @wusemanhttps://github.com/wuseman @Pulimethttps://github.com/Pulimet do you guys have any idea on this? — Reply to this email directly, view it on GitHubhttps://gist.github.com/Pulimet/5013acf2cd5b28e55036c82c91bd56d8#gistcomment-5022261 or unsubscribehttps://github.com/notifications/unsubscribe-auth/AUEXRIZMREGB2XEEF6O5IM3Y5E4ODBFKMF2HI4TJMJ2XIZLTSKBKK5TBNR2WLJDUOJ2WLJDOMFWWLO3UNBZGKYLEL5YGC4TUNFRWS4DBNZ2F6YLDORUXM2LUPGBKK5TBNR2WLJDHNFZXJJDOMFWWLK3UNBZGKYLEL52HS4DFVRZXKYTKMVRXIX3UPFYGLK2HNFZXIQ3PNVWWK3TUUZ2G64DJMNZZDAVEOR4XAZNEM5UXG5FFOZQWY5LFVA3TOOJUGQ4TIOFHORZGSZ3HMVZKMY3SMVQXIZI. You are receiving this email because you commented on the thread. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
thanks♥
Hi All!
I've recently launched a tool that wraps many of the commands here with a user interface. This desktop application is currently available for macOS. There's a roadmap outlining planned features for the near future.
Feel free to request any features you'd like to see, and I'll prioritize them accordingly.
One of the most important aspects of this application is that every command executed behind the scenes is displayed in a special log section. This allows you to see exactly what’s happening and learn from it.
Here's the link to the repository: Repo
App Description:
ADBugger is a desktop tool designed for debugging and QA of Android devices and emulators. It simplifies testing, debugging, and performance analysis by offering device management, automated testing, log analysis, and remote control capabilities. This ensures smooth app performance across various setups.
I tested this code in Android 7, exactly in Beelink GS1, it really is not Android TV, it's usually android versions used for tableds
Regard