A local ADB shell for Android!

Related tags

Debugging Tools LADB
Overview

LADB

A local ADB shell for Android!

How does it work?

LADB bundles an ADB server within the app libraries. Normally, this server cannot connect to the local device because it requires an active USB connection. However, Android's Wireless ADB Debugging feature allows the server and the client to speak to each other locally.

Initial Setup:

  1. About -> Build Number -> Click 7 times
  2. Developer Settings -> Wireless ADB Debugging -> On
  3. Developer Settings -> ADB Debugging -> On

Troubleshooting:

If you encounter "device unauthorized" or "multiple devices connected", try this:

  1. Enable Airplane Mode
  2. Disconnect any USB devices
  3. Kill and restart LADB

Still not working? Try this:

  1. Close LADB completely
  2. Developer Settings -> Wireless ADB Debugging -> Off
  3. Developer Settings -> ADB Debugging -> Off
  4. Developer Settings -> Revoke authorizations
  5. Reboot
  6. Developer Settings -> Wireless ADB Debugging -> On
  7. Developer Settings -> ADB Debugging -> On
  8. Enable Airplane Mode
  9. Open LADB

Credit

Thanks to Surge1223 for compiling ADB for the ARM/ARM64 architecture.

License

While this project is GPLv3 licensed, I would like to add an additional parameter: please do not publish unofficial (user) LADB builds to the Google Play Store.

Still confused? Email me at [email protected].

Comments
  • First time setup improvements

    First time setup improvements

    • [x] It is my understanding that Settings.Global.ADB_WIFI_ENABLED can programmatically detect what it has written on the tin
      • [x] I believe the WRITE_SECURE_SETTINGS permission could also allow for that to be started automatically
    • [ ] none of that is going to be a thing before 11, but for starters you could at least check the normal ADB_ENABLED property
    • [x] improve the "waiting for device respond" line, that leaves clueless users like in https://github.com/tytydraco/LADB/issues/65
    enhancement 
    opened by mirh 10
  • Make commands execution clearer for when 0 is returned.

    Make commands execution clearer for when 0 is returned.

    Assume I'm pm granting something. If you insert the wrong command, you get something like in #66. But, if do everything good, you don't get any feedback that the thing even run at all.

    I'm not necessarily saying to clutter the simple interface with a "line repeating the command that has just been inserted and then following it with a newline" like in a normal desktop CLI, but there should be some visual indication something happened.

    enhancement 
    opened by mirh 10
  • Packaging request for alternate Application Markets.

    Packaging request for alternate Application Markets.

    Hello, @tytydraco @IzzySoft

    I'm a big fan of FOSS, and it would be very helpful to me and to other FOSS enthusiasts, if you allow this application to be packaged for an alternate FOSS-only Application Repository.

    Please note that, this would(and not can/may) put a dent on your Sales of 'LADB' on the Play Store Marketplace. 'LADB' would not be the first app which is Paid on Play Store, but free at F-Droid, like the "Librera Reader", "OsmAnd+", "FTP Server", and maybe more...

    If you do not have any problem with all the above, then please have a look at this.

    Thanking you...

    enhancement 
    opened by gintominto5329 8
  • Libadb.so update

    Libadb.so update

    Hey, i see you are using the very first available arm version compiled from Osmosis in the magisk repo 2 years ago (i was so thankful for it back then, after i learned that for cross compiling i need smth like Xeon with 32G ram and 500GB source code :) ) .

    It seems things have moved a bit in these 2 years. There is a newer version in Termux in the android-tools package, and there is even newer and very current version from rendiix here

    https://github.com/rendiix/termux-adb-fastboot

    I think it's worth replacing, maybe will fix some weird problems with newer phones.

    P.s. maybe you want to close/delete some issues to, from the 30 open probably 20 are spam or people that do not read the manual...

    enhancement help wanted 
    opened by teou1 4
  • Unprompted ChromeOS interaction

    Unprompted ChromeOS interaction

    I thought that I had made mention of this previously but I don't see any mention of it in any issues or even comments so I could be wrong and if I'm not I don't know where I made mention of it but many times now when I've gone to use LADB instead of it trying to initiate wireless debugging on my phone (Google Pixel 6 Pro Android 13) It seems to somehow be communicating with my Pixelbook, which is obviously a completely separate device. I'm at a loss for why this is happening. I do have the Pixelbook connected to my Pixel via the Phone Hub feature/functionality of ChromeOS, but that's just connecting via Bluetooth as far as I know but even if it was connecting via a Wi-Fi connection or even over the network, I don't see why that would cause this to happen. Am I missing something or is this completely weird behavior?

    PXL_20221012_173330031.jpg

    Screenshot_20221012-133313.png

    opened by boognish-rising 4
  • Enable secure shell

    Enable secure shell

    I wanted to run a permission revoke command from this app and got 'neither user nor current process has android.permission.REVOKE_RUNTIME_PERMISSIONS' for example the command I was trying to run looked like pm revoke com.offendingapp android.permission.INTERNET there's a secure mode you can run ADB in that allows you to do such things

    question 
    opened by gaycodegal 4
  • Reset connection without deleting the bookmarks

    Reset connection without deleting the bookmarks

    The wifi ADB needs a reset every time I restart the device. THe solution is to do a factory reset and reenter the port and wifi code, but I also lose the bookmarks in the process. Would it be possible to allow reseting the connection information without losing the bookmarks?

    bug 
    opened by eloraby 3
  • Something like batch...

    Something like batch...

    I have some minor issues ...

    On my Android 10 there is an message that an error occurred while connecting automatically:

    adb (true, listOf ("- t", "1", "shell"))

    -t is unknown.

    The second is maybe because of my misconceptions. I've created a couple of .txt files that contain one ADB command per line. If I cut out a command line from one of these .txt files and paste it into the Shell Command field, this ADB command will be executed correctly. I have now assumed that you can transfer these .txt files to LADB via share so that LADP executes these command lines one after the other. But that doesn't work. A new instance of LADB is started for each share, but not a single command is executed. Do I have wrong ideas or is it more of a mistake that is not intended?

    bug 
    opened by ulrichloose 3
  • Cant type

    Cant type

    Cant type commands iv tried all the things airplane mode even an apk online instead of playstore cant figure it out still trying though lmk what I can do I'm running android 11 on a tab s6

    question 
    opened by PaqcoFlaco 3
  • AOSP version S - no return key present on keyboard

    AOSP version S - no return key present on keyboard

    Awesome work. I'm running aosp_flame-userdebug S AOSP.MASTER. When the keyboard pops up to type in shell cmds, there's no return key; in it's place is the emoji keyboard button. This can be fixed by changing android:inputType="textNoSuggestions|textShortMessage" to android:inputType="textNoSuggestions|text" in activity_main.xml, for example.

    enhancement 
    opened by serviceberry3 3
  • Stored commands

    Stored commands

    Hi

    Do you know ServerAssistant for android? Here you can send predefined commands to linux severs.

    Here you can store commands on server based setup, to re-run commands easy

    This would be a nice feature for your app.

    Some commands are pretty long, and if you need to re-run them often, its very practical to have them stored.

    Kind regards Requaero

    enhancement 
    opened by requa3r0 3
  • Sometimes LADB goes back to pairing screen after wireless debugging shows a successful pair

    Sometimes LADB goes back to pairing screen after wireless debugging shows a successful pair

    As described by title, sometimes when I try to do the pairing, the wireless debugging screen indicates a successful pairing (and even may indicate there's a debugging connection), but LADB goes back to pairing mode instead of showing the terminal output. I don't know of a specific way to reproduce it, just seems to happen at random.

    opened by ShadowFlare 0
  • Meu dispositivo é um A02s , ja tentei de todas as formas usar o ladb mais sempre que eu coloco o código de pareamento é o codigo de porta é aperto OKAY ele apresenta essa mensagem, adb unknown command pair

    Meu dispositivo é um A02s , ja tentei de todas as formas usar o ladb mais sempre que eu coloco o código de pareamento é o codigo de porta é aperto OKAY ele apresenta essa mensagem, adb unknown command pair

    Meu dispositivo é um A02s , ja tentei de todas as formas usar o ladb mais sempre que eu coloco o código de pareamento é o codigo de porta é aperto OKAY ele apresenta essa mensagem, adb unknown command pair

    opened by KwanXzYT 0
  • Stopped working in Android 13

    Stopped working in Android 13

    I have been using this app for a very long time to enable ADB WI-FI in my Pixel 6 wirelessly without use of a PC.

    But it looks like this stopped working since A13. Tried resetting but no luck.

    bug 
    opened by ShebeerPrince 12
Owner
Tyler
Android+Linux Developer | Kotlin, Python, Shell | Cal Poly Pomona 2024
Tyler
Cordova plugin for Android Serial USB communication (easily connect an Arduino board to an Android device).

PR-DC cordova-plugin-serialusb Cordova plugin for Android Serial USB communication. This plugin makes a connection to the external board trivial, for

PR-DC 3 May 8, 2022
Stetho is a debug bridge for Android applications, enabling the powerful Chrome Developer Tools and much more.

Stetho Stetho is a sophisticated debug bridge for Android applications. When enabled, developers have access to the Chrome Developer Tools feature nat

Facebook 12.6k Jan 7, 2023
A library for debugging android databases and shared preferences - Make Debugging Great Again

Android Debug Database Android Debug Database is a powerful library for debugging databases and shared preferences in Android applications Android Deb

AMIT SHEKHAR 8.1k Dec 29, 2022
🔪Swiss-army knife for Android testing and development 🔪 ⛺

ADB Enhanced ADB-Enhanced is a Swiss-army knife for Android testing and development. A command-line interface to trigger various scenarios like screen

Ashish Bhatia 938 Dec 20, 2022
Under the Hood is a flexible and powerful Android debug view library. It uses a modular template system that can be easily extended to your needs, although coming with many useful elements built-in.

Under the Hood - Android App Debug View Library Under the Hood is a flexible and powerful Android debug view library. It uses a modular template syste

Patrick Favre-Bulle 217 Nov 25, 2022
Android library to record the network calls through the interceptor mechanism of the http clients.

Android Snooper Introduction Android Snooper is a library which helps in debugging issues while running the applications on android devices. One of th

Prateek 151 Nov 25, 2022
A Read-Eval-Print-Loop server for Android and SQLite

Android DebugPort Android DebugPort is a drop-in utility which allows you to write and execute code within your app's context, at runtime, and from th

Jason Feinstein 148 Nov 14, 2022
traffic debugging library for android

TrafficMonitor About Display traffic per Activity.Observing traffic is used by TrafficStats API. OkHttp Interceptor observer is implementing. Demo Bai

Tetsuya Masuda 17 Feb 4, 2022
Easy android exception tracer and handler.

Introduction Lup is a small android library that can help you to tracking bug that causes application stopped working (force close). Whiting this libr

icodeu 4 Sep 29, 2022
Sources for the LiveBoot app for rooted Android devices

This is the sauce for the LiveBoot app. License Copyright © 2011-2020 Jorrit Chainfire Jongma This code is released under the GPLv3. LICENSE, COPYING.

Chainfire 131 Jan 9, 2023
android logcat

android logcat

Ji Sungbin 3 Dec 2, 2022
btrace(AKA RheaTrace) is a high performance Android trace tool which is based on Systrace

btrace README 中文版 btrace(AKA RheaTrace) is a high performance Android trace tool

Bytedance Inc. 1.2k Jan 4, 2023
Pluto: An on-device debugging framework for Android applications

Pluto is an on-device debugging framework for Android applications, which helps in the inspection of HTTP requests/responses, captures Crashes, and ANRs, and manipulates application data on the go.

Pluto 550 Dec 27, 2022
Android QA/Debug tools to speed up and streamline the development progress.

Android Dev Tools is a library that contains various QA/Debug tools to speed up and streamline the development progress.

Trendyol Open Source 105 Dec 5, 2022
A local ADB shell for Android!

LADB A local ADB shell for Android! How does it work? LADB bundles an ADB server within the app libraries. Normally, this server cannot connect to the

Tyler 1.1k Jan 2, 2023
Enhance the adb shell using busybox, supporting vi、grep and awk etc. No need root.

super-adb 用busybox加持的功能更加强大的adb shell;不需要root。 使用方法 准备工作 安装 python,注意选择安装python 2.x 安装pexpect这个python库: pip install pexpect 下载super_adb,把它放到系统路径 cp su

weishu 273 Dec 7, 2022
A Kotlin/Java library to connect directly to an Android device without an adb binary or an ADB server

dadb Blog Post: Our First Open-Source Project A Kotlin/Java library to connect directly to an Android device without an adb binary or an ADB server de

mobile.dev 791 Dec 20, 2022
AdpPad is a GUI application to use adb. adb is a command line tool to control android device.

AdbPad AdpPad is a GUI application to use adb. adb is a command line tool to control android device. Demo.mp4 ✨ Feature Observe a connected android de

katz 31 Dec 30, 2022
Another local music player for Android built with Compose. Way too "local" so you likely won't need it.

AnotherAndroidLocalMusicPlayer Another local music player for Android built with Compose and media3 (ExoPlayer). Warning The app behaves strangly as i

oO0oO0oO0o0o00 0 Mar 13, 2022