Skip to main content

wrapper for pymobiledevice3 for easy use with iphone device

Project description

tidevice3

PyPI version codecov

wrapper for pymobiledevice3 to make it more easy to use.

Install

Mac

pip install tidevice3

# or install as Isolated environment
brew install pipx
pipx install tidevice3

Linux

# required by pytun-pmd3
sudo apt install python3-dev gcc pipx
pipx install tidevice3
pipx ensurepath

CLI Usage

iOS >= 17 screenshot,app:ps connect through Ethernet over USB (NCM device) instead of usbmuxd So tunneld should start first.

# start tunneld for iOS>=17
# launch process (pmd3 remote start-tunnel) when new usb device connected
# root required
$ sudo t3 tunneld

Basic usage

$ t3 list
...

# enable developer mode and mount develoepr image
$ t3 developer

# install & uninstall
$ t3 install https://....ipa
$ t3 install ./some.ipa
$ t3 uninstall com.example

# take screenshot
$ t3 screenshot out.png

# reboot
$ t3 reboot

# file operation
$ t3 fsync <ls|rm|pull|push> [Arguments...]

# app
$ t3 app <ps|list|launch|kill|instal|uninstall|foreground>

# install
# alias for app install
$ t3 install <URL or LocalIPA>

# screenrecord
$ t3 screenrecord out.mp4

# relay (like iproxy LOCAL_PORT DEVICE_PORT)
$ t3 relay 8100 8100
$ t3 relay 8100 8100 --source 0.0.0.0 --daemonize

# show help
$ t3 --help

API Usage

The API alone is insufficient for all operations; combining it with the pymobiledevice3 library can accomplish more things.

from tidevice3.api import list_devices, connect_service_provider, screenshot, app_install

for d in list_devices(usb=True):
    print("UDID:", d.Identifier)
    service_provider = connect_service_provider(d.Identifier)
    pil_im = screenshot(service_provider)
    pil_im.save("screenshot.png")

    # install ipa from URL or local
    app_install(service_provider, "https://example.org/some.ipa")

iOS 17 support

Mac,Windows,Linux all supported iOS<17

WDA

其实WDA启动可以不用XCUITest,下面是具体的方法(适用于iOS >= 15)

DEVELOP & CONTRIBUTE

see DEVELOP.md

LICENSE

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tidevice3-0.11.3.tar.gz (17.9 kB view details)

Uploaded Source

Built Distribution

tidevice3-0.11.3-py3-none-any.whl (24.6 kB view details)

Uploaded Python 3

File details

Details for the file tidevice3-0.11.3.tar.gz.

File metadata

  • Download URL: tidevice3-0.11.3.tar.gz
  • Upload date:
  • Size: 17.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for tidevice3-0.11.3.tar.gz
Algorithm Hash digest
SHA256 646575c618aefb0a757614cbdd5b7af1ee9eeebb3ca4ccb274ebab41dce61cca
MD5 58564ad64edcad3d22e3a1bbe541ba19
BLAKE2b-256 a2e3993ae1c9ef4242d1aad91330417be9a13fcf284d47cd914e50c4ea0b8884

See more details on using hashes here.

File details

Details for the file tidevice3-0.11.3-py3-none-any.whl.

File metadata

  • Download URL: tidevice3-0.11.3-py3-none-any.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for tidevice3-0.11.3-py3-none-any.whl
Algorithm Hash digest
SHA256 fc491c331650427a372fd5e66d7352ac9ec2f2ebf76d53d29fdd2f99f16f07d5
MD5 10151c58130c4e54b309ae6893d1f383
BLAKE2b-256 72c03cbbcd3e645ac29d81549c63fb9c3a40cb0f786e19c67a7e2ec0af7c6ca6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page