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.3.tar.gz (29.6 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.3-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rc_tidevice3-0.1.3.tar.gz
  • Upload date:
  • Size: 29.6 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.3.tar.gz
Algorithm Hash digest
SHA256 d1e61a6ea3be77c7917d4de1f997c0c756c89f5890c8bc5ccb976d3ebe1e9ddb
MD5 037a57b1bb6e8b2f8019790d9a0e981b
BLAKE2b-256 101bb3236dce161d01ae6eefe903a1c78c0ec2f57591e1c86b2cbb063c8495aa

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rc_tidevice3-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 26.2 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 19f8b9fada396d385cfbeefa53d053eafe164d53f0ee63a981d30b228bed8a69
MD5 f6b48641189095b13edc018d563a001d
BLAKE2b-256 244f1c4a708894708bd9e976cc728edb22e31187fda4d396d641ecca593c112d

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