Skip to content

Botspot/androidbuddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AndroidBuddy logo

Manage your Android phone from a Linux computer.
File transfer, file browsing and in-place editing, screen control, tethering, reverse tethering, and an autostart feature when a phone is detected.

What do I use AndroidBuddy for?

  • Reducing eye strain and improving posture by using the phone on a large screen that is farther away.
  • Moving big videos to my computer to delete them from the phone
  • Sharing my fast ethernet connection with my phone
  • Using my phone's WiFi or mobile data connection, which is sometimes more reliable than my computer's built-in WiFi connection
  • Responding to texts with a full size keyboard
  • Copying and pasting links and other text between computer and phone

AndroidBuddy should work on any Debian-based distro regardless of CPU architecture, but it has been tested on ARM64 Raspberry Pi OS.
If your system is Raspberry Pi or ARM Linux, just install it with the Pi-Apps store.
badge <-- Pi-Apps lets you install AndroidBuddy with a few simple clicks.

For advanced setup and manual installation straight from this repository: (click to expand)
sudo apt install yad adb

Some features require additional dependencies.

  • To use reverse tethering, a minimal rust compilation toolchain is required in order for AndroidBuddy to compile gnirehtet.
    sudo apt install rustc cargo
    
    AndroidBuddy will try to install these if you click "Share internet to phone"
  • To browse files, this package needs to be installed and configured: (On most distros it already is)
    sudo apt install gvfs-backends
    
    AndroidBuddy will try to install this if you click "Browse phone's files"
  • To control the screen, you need Scrcpy, which is not available on the Debian repositories.
  • For AndroidBuddy to launch automatically when a phone is detected, your distro needs to be using udev. Most distros do, but if yours does not, you will need to enable that yourself.

Download and run

git clone https://github.com/Botspot/androidbuddy
./androidbuddy/main.sh

AndroidBuddy is intended to be run as a normal user. When it needs escalated permissions, it will try to use passwordless sudo, and if that fails, it will fallback to a password prompt dialog.

Usage

  1. Connect your favorite Android device to your Linux computer using a USB cable.
    1.1. Make sure that USB debugging is enabled. If AndroidBuddy detects an Android device with USB debugging disabled, instructions will be displayed for how to enable it.
    1.2. Be sure to use a USB cable that has communication pins. Some cheap cables only supply charging power, and cannot be used.
  2. Click the buttons.
    20240808_01h20m17s_grim
  3. There is no step 3. This should be pretty self-explanatory. Hover the mouse over a button to learn more about it.
  4. Open an issue if you encounter any problems or have a question.

Uninstall

On first run, AndroidBuddy will copy its icon to the user's icons directory and create a menu launcher for convenient future usage. To remove these, run this command:

rm -f ~/.local/share/applications/androidbuddy.desktop ~/.local/share/icons/androidbuddy.png

If you used the reverse tethering feature:

sudo rm -rf /usr/bin/gnirehtet /opt/gnirehtet

Updates

AndroidBuddy will automatically keep itself updated using git pull when necessary.

Configuration

There are no settings or options. This app follows the KISS principle. Change the script to your liking if you need to adjust its behavior. If you make a new useful feature and want to see it added, please open a Pull Request! I would love to add new features, such as bluetooth support, which should actually be fairly straightforward since adb and scrcpy support that.

Similar projects and what's wrong with them

  • scrcpy-gui - only deals with controlling the screen, and the project is abandoned
  • guiscrcpy - only deals with controlling the screen, and the project is abandoned
  • scrcpy-plus - only deals with controlling the screen
  • droidbuddy - only major features are file transfer, APK installation, and screen control, and the project is abandoned

Thanks for reading!
-Botspot
PS. It took me 4 hours to make AndroidBuddy for my own personal use because I was tired of using droidbuddy. If you want to chat or need help then consider joining my Discord Server.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages