A wrapper script to make working with ADB (Android Debug Bridge) easier

Overview

Python-ADB-Wrapper

A wrapper script to make working with ADB (Android Debug Bridge) easier

This project was just a simple test to see if I could wrap some adb stuff in Python (and even automate backups via a list of strings/apps for example).

preview.mp4

I had some issues understanding the different license types, but to keep it simple: This Project is freely licensed / public domain? -> You can do whatever you want with it, no credits, no asking etc... Do what you want.

Upon startup / import, you'll be asked to set the ADB Path. If you don't want that, simply set the path in the script yourself and save it / deleted the rest of the path thing at the top. I trust that you are smart enough to handle this basic first step if your goal is to modify and reuse the code. If not, simply input your desired option.

The Script is kept as simple and the imports as short / low as possible (Only 1 -> Subprocess)

Function List

  • execute(command, deviceID):
  • execute(command):
  • selectDevice(deviceID):
  • listDevices():
  • listApps(appType="thirdparty", listPath=False):
  • listApps(listPath=False):
  • listFeatures():
  • listLibraries():
  • getFullAppName(app):
  • getFullAppPath(app):
  • backupAPK(appName):
  • backupAPKList(appNameList):
  • backupOBB(appName):
  • backupOBBList(appNameList):
  • backupFullApp(appName):
  • backupFullAppList(appNameList):

Notes:

  • execute exists twice in case you want to use a specific device id, regular execute with auto choose your connected android device.
  • execute is not just used mainly in the code by other functions. It can also be used by you in order to run a specific adb code, just in case.
  • listApps has multiple options, default being no params => Displays/returns a list of your regular (called third party excl. system apps) apps. If you set listPath to True, you'll receive the full complete path (with "cryptic" letters etc..., default = False)
  • backupAPK backups APK in the current folder where the script is being ran.
    • DO NOTE, sometimes the functions will say something about "NoneType". This issue should be fixed (renamed the overloaded function with list as param). Though if it does happen, it means probably that it couldn't find an app with that name.
  • backupOBB works now (updated)
  • backupFullApp works now (updated).
Owner
18iteration
18iteration
MiniJVM is simple java virtual machine written by python language, it can load class file from file system and run it.

MiniJVM MiniJVM是一款使用python编写的简易JVM,能够从本地加载class文件并且执行绝大多数指令。 支持的功能 1.从本地磁盘加载class并解析 2.支持绝大多数指令集的执行 3.支持虚拟机内存分区以及对象的创建 4.支持方法的调用和参数传递 5.支持静态代码块的初始化 不支

keguoyu 60 Apr 01, 2022
🏆 A ranked list of awesome Python open-source libraries and tools. Updated weekly.

Best-of Python 🏆 A ranked list of awesome Python open-source libraries & tools. Updated weekly. This curated list contains 230 awesome open-source pr

Machine Learning Tooling 2.7k Jan 03, 2023
A10 cipher - A Hill 2x2 cipher that totally gone wrong

A10_cipher This is a Hill 2x2 cipher that totally gone wrong, it encrypts with H

Caner Çetin 15 Oct 19, 2022
Create rangebased on lists or values of the range itself. Range any type. Can you imagine?

funcao-allrange-for-python3 Create rangebased on lists or values of the range itself. Range any type. Can you imagine? WARNING!!! THIS MODULE DID NOT

farioso-fernando 1 Feb 09, 2022
peace-performance (Rust) binding for python. To calculate star ratings and performance points for all osu! gamemodes

peace-performance-python Fast, To calculate star ratings and performance points for all osu! gamemodes peace-performance (Rust) binding for python bas

9 Sep 19, 2022
Transpiles some Python into human-readable Golang.

pytago Transpiles some Python into human-readable Golang. Try out the web demo Installation and usage There are two "officially" supported ways to use

Michael Phelps 318 Jan 03, 2023
An universal linux port of deezer, supporting both Flatpak and AppImage

Deezer for linux This repo is an UNOFFICIAL linux port of the official windows-only Deezer app. Being based on the windows app, it allows downloading

Aurélien Hamy 154 Jan 06, 2023
Density is a open-sourced multi-purpose tool for ROBLOX with some cool

Density is a open-sourced multi-purpose tool for ROBLOX with some cool

ssl 5 Jul 16, 2022
The repository for my video "Playing MINECRAFT with a WEBCAM"

This is the official repo for my video "Playing MINECRAFT with a WEBCAM" on YouTube Original video can be found here: https://youtu.be/701TPxL0Skg Red

Rishabh 27 Jun 07, 2022
Just some mtk tool for exploitation, reading/writing flash and doing crazy stuff

Just some mtk tool for exploitation, reading/writing flash and doing crazy stuff. For linux, a patched kernel is needed (see Setup folder) (except for read/write flash). For windows, you need to inst

Bjoern Kerler 1.1k Dec 31, 2022
1st Online Python Editor With Live Syntax Checking and Execution

PythonBuddy 🖊️ 🐍 Online Python 3 Programming with Live Pylint Syntax Checking! Usage Fetch from repo: git clone https://github.com/ethanchewy/Python

Ethan Chiu 255 Dec 23, 2022
Fetch PRs from GitHub and analyze which ones are unmergeable

Set up token Generate a personal access token on GitHub. Add repo permissions. export GH_TOKEN="abcdefg" Pull PR data make Usually, GitHub doesn't h

Stefan van der Walt 1 Nov 05, 2021
All solutions for the 2021 Advent of Code event.

Advent of Code 2021 Solutions All solutions for the 2021 Advent of Code event. Setup Create a file called .session. Go to adventofcode.com and copy th

Bruce Berrios 6 Dec 26, 2021
berisi kodingan kodingan python umum yang kubuat.

python-codevault berisi kodingan kodingan python umum yang kubuat. untuk memudahkan transisi dan menjadi refrensi tutorial. daily challange for myself

Agung Zon Blade 1 Dec 19, 2021
Files relating to polymtl university

This is a tool I developed quickly, which allows users to visualize class availability by day of the week for a given program at polymtl. The schedule

PN 3 Mar 15, 2022
Nook is a simple, concatenative programming language written in Python.

Nook Nook is a simple, concatenative programming language written in Python. Status Nook is currently WIP. It lacks a lot of basic feature, and will n

Wumi4 4 Jul 20, 2022
India Today Astrology App

India Today Astrology App Introduction This repository contains the code for the Backend setup of the India Today Astrology app as a part of their rec

Pranjal Pratap Dubey 4 May 07, 2022
Web app to find your chance of winning at Texas Hold 'Em

poker_mc Web app to find your chance of winning at Texas Hold 'Em A working version of this project is deployed at poker-mc.ue.r.appspot.com. It's run

Aadith Vittala 7 Sep 15, 2021
GMHI: Gut Microbiome Health Index

GMHI: Gut Microbiome Health Index Description Gut Microbiome Health Index (GMHI)

Daniel Chang 2 Jun 30, 2022
CDM Device Checker for python

CDM Device Checker for python

zackmark29 79 Dec 14, 2022