Ich habe einige iOS-Geräte in einer Gerätefarm, die ich so weit wie möglich automatisieren möchte. Ich möchte sie nach Gebrauch reinigen (d. H. In einen festgelegten Zustand zurückversetzen), ohne physisch mit den Geräten interagieren zu müssen.

Bisher habe ich festgestellt, dass ich das kann:

  1. Installieren idevicebackup2 von libimobiledevice
  2. Lauf idevicebackup2 backup /tmp/iphonebackup
  3. Lauf idevicebackup2 restore /tmp/iphonebackup --system --reboot
  4. Warten Sie auf den Neustart

Nach dem Neustart werden die Bildschirme "Update Complete" und "Welcome to iPhone" angezeigt. Diese stören den automatisierten Betrieb des Geräts (z. B. das Starten von Apps). Ich hoffte, ich könnte einen XCUITest starten, um durch diesen sinnlosen Assistenten zu navigieren, aber ich bekomme es Could not launch “WebDriverAgent”: Unlock the device “iPhone” and repeat the action in Xcode, wenn Sie dies versuchen.

Ist es möglich, diesen Setup-Assistenten nach dem Wiederherstellen der Einstellungen zu überspringen? Oder gibt es eine andere Möglichkeit, das Telefon in einen Zustand zurückzusetzen, in dem ich erfolgreich über die Befehlszeile damit interagieren kann?

Crummy
quelle