diff options
author | Eike Ziller <[email protected]> | 2025-03-19 10:29:50 +0100 |
---|---|---|
committer | Eike Ziller <[email protected]> | 2025-03-19 12:21:53 +0000 |
commit | ecbbe36c38bf97bae24d8930f6fc29a7f2894b49 (patch) | |
tree | 074c648e83e2ce221bbad24e18e3b2eb5e6016fa | |
parent | 11d956b34611c03d2abedcc5648be8b6381ac0f7 (diff) |
iOS: Fix running on device with Xcode 15.4
The devicectl version from Xcode 15.4 does already support the
`--console` option for capturing app output, but it looks like that
doesn't reliable work for all devices. Bump the requirement for app
output to Xcode 16. It then uses the polling runner for Xcode < 16.
Fixes: QTCREATORBUG-32637
Change-Id: Ib3fb80750b283bfbd8f9cc779b6842d92b65a3cd
Reviewed-by: Richard Moe Gustavsen <[email protected]>
-rw-r--r-- | src/plugins/ios/iosdevice.cpp | 4 | ||||
-rw-r--r-- | src/plugins/ios/iosrunner.cpp | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/plugins/ios/iosdevice.cpp b/src/plugins/ios/iosdevice.cpp index 61a99fd9b95..9707ed636b3 100644 --- a/src/plugins/ios/iosdevice.cpp +++ b/src/plugins/ios/iosdevice.cpp @@ -610,8 +610,10 @@ void IosDeviceManager::monitorAvailableDevices() bool IosDeviceManager::isDeviceCtlOutputSupported() { + // Theoretically the devicectl from Xcode 15.4 already has the required `--console` option, + // but that is broken for some (newer?) devices (QTCREATORBUG-32637). return instance()->m_deviceCtlVersion - && instance()->m_deviceCtlVersion >= QVersionNumber(355, 28); // Xcode 15.4 + && instance()->m_deviceCtlVersion >= QVersionNumber(397, 21); // Xcode 16.0 } bool IosDeviceManager::isDeviceCtlDebugSupported() diff --git a/src/plugins/ios/iosrunner.cpp b/src/plugins/ios/iosrunner.cpp index 8f961f30e4e..b5e30c86448 100644 --- a/src/plugins/ios/iosrunner.cpp +++ b/src/plugins/ios/iosrunner.cpp @@ -1016,7 +1016,7 @@ IosRunWorkerFactory::IosRunWorkerFactory() if (IosDeviceManager::isDeviceCtlOutputSupported()) return new DeviceCtlRunner(control); // TODO Remove the polling runner when we decide not to support iOS 17+ devices - // with Xcode < 15.4 at all + // with Xcode < 16 at all return new DeviceCtlPollingRunner(control); } control->setIcon(Icons::RUN_SMALL_TOOLBAR); |