Skip to main content

forked from codeskyblue/tidevice3, 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

rc_tidevice3-0.1.5.tar.gz (29.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rc_tidevice3-0.1.5-py3-none-any.whl (26.4 kB view details)

Uploaded Python 3

File details

Details for the file rc_tidevice3-0.1.5.tar.gz.

File metadata

  • Download URL: rc_tidevice3-0.1.5.tar.gz
  • Upload date:
  • Size: 29.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for rc_tidevice3-0.1.5.tar.gz
Algorithm Hash digest
SHA256 fc59a86eb6e586abbbfe44b4895223a897a980d8e2d3f1a9514ea801abea63d4
MD5 958062752b503fd78c7c9c2f2484b00e
BLAKE2b-256 dd09abebac082b941a262840a60f21403d80fd2b1f00ffb4f274f31b6c6a72e5

See more details on using hashes here.

File details

Details for the file rc_tidevice3-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: rc_tidevice3-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 26.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for rc_tidevice3-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 74b9a681b7816cdef83e395b13231c9360147c40a69c4c6de5c6665997899235
MD5 2c324a728d51a0f839b7e5366d0d7c38
BLAKE2b-256 ff32bbb46d85be6b95170eef358e066fa8479d441fb41cae4249839c982ef7b0

See more details on using hashes here.

Supported by

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