๐ฅ Execute powerful mobile device control scripts using easy terminal commands
๐ Quick screen capturing, app management and much more
๐ฑ Useful for mobile application testing or clearing device memory
๐ Target specific device easily, no more id copying from adb devices
and explicit using adb -s <device_id>
โณ Save your precious time
๐ค Feel free to contribute via pull request
โญ๏ธ If you love it, hit the star button at the top right corner
- Clone this repository
git clone https://github.com/IntergalacticPenguin/mobile-toolkit.git
- Setup Android tools
- Download and install Android Studio or Android command line tools
- Add the absolute path to the platform-tools folder to PATH variable in .bash_profile
PATH=$PATH:/Users/dummyuser/Library/Android/sdk/platform-tools export PATH
- Allow USB debugging on your device, connect it and authorize your computer (click OK on device screen)
- Setup iOS tools
- Install latest Xcode and iOS command line tools using App Store
- Install Homebrew package manager
- Install usbmuxd, libimobiledevice and ideviceinstaller
brew install --HEAD usbmuxd && brew install --HEAD libimobiledevice && brew install --HEAD ideviceinstaller
- Mount developer image on your device -> connect iOS device to USB, authorize your computer (click "Trust" on device screen) and run Xcode
- (Optional) Use following commands in any directory by adding the absolute path to the cloned folder to PATH variable in .bash_profile (or equivalent file)
PATH=$PATH:/Users/dummyuser/Library/Android/sdk/platform-tools PATH=$PATH:/Users/dummyuser/mobile-toolkit export PATH
- Save screenshot to ~/Desktop
- Filename includes device model, system API level and current time and date
- Specify your own filename by passing it as argument
- Take screenshot on all connected devices
- Filename includes device model, system API level and current time and date
- Specify your own filename by passing it as argument
- Record screen
- End recording using
ctrl + c
- Save screen video footage to ~/Desktop.
- Specify your own filename by passing it as argument
apaste "[email protected]" password1 "5005 1002 3332 1112" "2/19" 5004
- Insert text passed as argument into currently focused text field
- Surround argument with "" if you want to insert multi-word text into one field or use some non-alphanumeric characters
- Every following argument will move focus into the next field
- You can quickly fill some form etc
- Toggle layout bounds visibility
- App restart may be necessary on lower APIs
- Open link passed as argument in web browser
- Open system settings app
- Start any of your installed Android emulators
- Insert long text into focused field
- Useful for testing layouts
alaunch
alaunch com.dummy.package.name.app
- List third party apps and run the chosen one
- Specify package name by passing it as argument
akill
akill com.dummy.package.name.app
- Restart foreground app
- Target specific app by passing package name as argument
aerase
aerase com.dummy.package.name.app
- Delete foreground app data and restart it
- Target specific app by passing package name as argument
adb_install some-app-file.apk
- Install and run .apk file
- Can overwrite existing app
auninstall
auninstall com.dummy.package.name.app
- Uninstall third party app
- Choose from the list, or pass package name as argument
- Uninstall all third party packages
- Skips some essential apps
- Edit this script yourself to customize the list of essential apps
- (Optional) Remove everything in /sdcard/Download directory
agoogleplay "Dummy App"
- Search for app on Google Play
- Pass app name as argument
- Print system log output
- Print log output containing application crashes only
- Set how many crash surrounding lines to print using argument
- Print device information
- (Optional) Search for the device on GSMArena
- Save screenshot to ~/Desktop
- Filename includes device model, system version and current time and date
- Specify your own filename by passing it as argument
- Run QuickTime and open video source picker (so you can choose device right away)
- You may have to allow some system permission, so the script can access the picker
Required: Install ffmpeg brew install ffmpeg
- Record screen (take as many screenshots per second as possible) to ~/Desktop
- End recording using
ctrl + c
- Compose .mp4 from screenshots and save it to ~/Desktop
- (Optional) Delete screenshots
- Filename includes device model, system version and current time and date
- Specify your own filename by passing it as argument
iinstall some-app-file.ipa
- Install .ipa file
- Can overwrite existing app
iuninstall
iuninstall com.dummy.package.name.app
- Uninstall third party app
- Choose from the list, or pass package name as argument
- Uninstall all third party packages
- Skips some essential apps
- Edit this script yourself to customize the list of essential apps
- Gathers crash logs from the device to ~/Desktop (be patient ๐ )
- You can import logs to Xcode to make them more readable
- Open relevant project in Xcode
- Click on Window > Devices and Simulators > View Device Logs
- Drag the .crash file onto the log list
- The readable crash log should appear in the list
- Print device information
- (Optional) Search for the device on GSMArena
- Reboot device