Skip to content

Latest commit

 

History

History
28 lines (26 loc) · 1.68 KB

device-foldable.md

File metadata and controls

28 lines (26 loc) · 1.68 KB

Foldable Apple verification

Before you change capture behavior on a multi-panel device, read ADR 0025. To list the panels, run xcrun devicectl device info displays --device <udid>.

  • Panels: the command lists each integrated panel with backlightState. Only the lit panel permits capture. A capture of the dark panel exits 0 and writes an all-black PNG.
  • Input routing: after each pose change, verify a fresh control. A successful synthesis acknowledgement does not prove a hit. Examine the runner and simulator testmanagerd/BackBoard logs for display identity and delivery. The resolved app window owns gesture coordinates and its target screen.
  • Pose: agent-device fold closed|half-open|open sends private HID inside the simulator. It reads the hinge back through devicectl device motion hinge-angle. Device Hub and host Accessibility permission are not required. After a fold, take another snapshot. Folds invalidate refs and coordinates. Verify locally with Device Hub stopped and the simulator booted through simctl boot. Test these items:
    • All three poses.
    • Capture of the active panel.
    • An app interaction. Until GHA supports the runtime, Duo coverage remains local. To examine the angle separately, run: xcrun devicectl device motion hinge-angle --device <udid> --session-timeout 1 --timeout 5.
  • Touch overlays export at the captured track size. The compositor checks its output size and non-black content against the raw capture. If that check fails, record stop keeps the raw file. It reports overlayWarning. record start --hide-touches is only for the fastest raw capture.
  • To launch on iOS 27.0/27.1, iOS 27 SDK apps need UIScene lifecycle.