alibaba / alibaba/tidevice

iOS 15.7 tidevice截图和结束应用都报错“tidevice.exceptions.MuxError: ImageMountFailed”

Open
#264 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
2.6k
Forks
469
PR merge metrics
No merged PRs in 30d

Description

(base) PS C:\Users\xxxx\Desktop> $picpath="ios_"+(Get-Date).ToString('yyyy-MM-dd-HH-mm-ss_fff')+".png";tidevice screenshot ${picpath}
Screenshot saved to ios_2022-10-12-16-29-42_020.png
[I 221012 16:29:44 _device:602] ProductVersion: 15.7
[I 221012 16:29:44 _imagemounter:157] Pushing DeveloperDiskImage.dmg
[I 221012 16:29:44 _imagemounter:170] Push complete
Traceback (most recent call last):
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_device.py", line 484, in start_service
return self._unsafe_start_service(name)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_device.py", line 503, in _unsafe_start_service
raise MuxServiceError(error)
tidevice.exceptions.MuxServiceError: InvalidService

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "D:\CodeIDE\Anaconda3\lib\runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\CodeIDE\Anaconda3\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "D:\CodeIDE\Anaconda3\Scripts\tidevice.exe\__main__.py", line 7, in
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\__main__.py", line 951, in main
actions[args.subparser](args)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\__main__.py", line 278, in cmd_screenshot
d.screenshot().convert("RGB").save(filename)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_device.py", line 528, in screenshot
return next(self.iter_screenshot())
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_device.py", line 533, in iter_screenshot
conn = self.start_service(LockdownService.MobileScreenshotr)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_device.py", line 486, in start_service
self.mount_developer_image()
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_device.py", line 663, in mount_developer_image
self.imagemounter.mount(image_path, signature_path)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_imagemounter.py", line 139, in mount
return self.mount_fileobj(image_reader, image_size, signature_content)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_imagemounter.py", line 182, in mount_fileobj
self._check_error(ret)
File "D:\CodeIDE\Anaconda3\lib\site-packages\tidevice\_imagemounter.py", line 123, in _check_error
raise MuxError(ret['Error'])
tidevice.exceptions.MuxError: ImageMountFailed

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the `tidevice screenshot` failure on iOS 15.7, then read `tidevice/_device.py` around `start_service`, `screenshot`, and `mount_developer_image`. Inspect `tidevice/_imagemounter.py` around `mount_fileobj` and `_check_error`; done means screenshot and application termination no longer fail with `ImageMountFailed`.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, python
Domain
cli, mobile-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.