https://github.com/trackercontrol/ios_monkey
Application Exerciser Monkey for iOS
https://github.com/trackercontrol/ios_monkey
esp32 ios
Last synced: 6 months ago
JSON representation
Application Exerciser Monkey for iOS
- Host: GitHub
- URL: https://github.com/trackercontrol/ios_monkey
- Owner: TrackerControl
- License: gpl-3.0
- Created: 2023-03-13T17:49:51.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-03-20T15:54:01.000Z (almost 3 years ago)
- Last Synced: 2025-07-28T16:36:44.160Z (7 months ago)
- Topics: esp32, ios
- Language: JavaScript
- Homepage:
- Size: 15.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Application Exerciser Monkey for iOS
This repository provides a basic automated instrumentation tool for iOS. It is inspired by the existing [Application Exerciser Monkey for Android](https://developer.android.com/studio/test/other-testing-tools/monkey).
Unfortunately, there currently exist no other tools for the automated instrumentation of *arbitrary* iOS apps, including those that you don't develop yourself.
## Getting started
Install and run this project with the Arduino IDE on an ESP32 microcontroller. You need to also install the [ESP32-BLE-Keyboard library](https://github.com/T-vK/ESP32-BLE-Keyboard) and the [Bluetooth Nimble Library](https://github.com/T-vK/ESP32-BLE-Keyboard#how-to-activate-nimble-mode).
Connect the ESP32 then to a *jailbroken* iPhone. Make sure you enable Full Keyboard Access. The iPhone must run [Frida](https://frida.re), [`open` for iOS 11+](http://cydia.saurik.com/package/com.clarkecdc.open/), and be set up for SSH access on port 2222 (e.g. with [`iproxy`](https://iphonedev.wiki/index.php/SSH_Over_USB)).
Once that's done, you can start the testing by running `python monitor.py [bundleId of iOS app] [serial ESP32 controller]`.
*Tested only with iOS 14.2 and the [checkra1n](https://checkra.in) jailbreak.*
## Credits
- ESP32-BLE-Keyboard:
- Open for iOS 11+:
- Frida: