在 Xcode 7 UI 自动化中模拟按下主页按钮
Simulating pressing the Home button in Xcode 7 UI Automation
我已经归结为:
XCUIDevice.pressButton(noideawhatgoeshere)
我试过 XCUIDeviceButtonHome, home, Home, 1
如何在 iOS 上模拟按下 Xcode 中的主页按钮?
我知道没有办法模拟主页按钮 - 这可能是不可能的。您可以通过以下方式对其进行暴力破解:[[UIApplication sharedApplication] terminate];
或者您可以通过以下方式将您的应用程序置于后台指定的持续时间:UIATarget.localTarget().deactivateAppForDuration(seconds);
(使用objc的借口)
您需要先获取设备实例。所以要模拟按下主页按钮:
XCUIDevice.sharedDevice().pressButton(XCUIDeviceButton.Home)
应该可以(在物理设备上对我有用)
谢谢!
马赞
Swift 5 版本:
XCUIDevice.shared.press(XCUIDevice.Button.home)
另外,验证它在模拟器中工作,至少在 Xcode 11.2.1 在模拟 "iPad Pro (9.7-inch)" 运行 iPadOS 13.2.2 上是这样。
Objective C
[XCUIDevice.sharedDevice pressButton: XCUIDeviceButtonHome];
还有 XCUIDeviceButtonVolumeUp
音量增大按钮和 XCUIDeviceButtonVolumeDown
音量减小按钮。
Swift 4:
XCUIDevice.shared.press(.home)
在 Swift 版本 4.0.2 和 4.0.3:
XCUIDevice.shared().press(XCUIDeviceButton.home)
现在 Swift 4.1:
XCUIDevice.shared.press(XCUIDevice.Button.home)
我已经归结为:
XCUIDevice.pressButton(noideawhatgoeshere)
我试过 XCUIDeviceButtonHome, home, Home, 1
如何在 iOS 上模拟按下 Xcode 中的主页按钮?
我知道没有办法模拟主页按钮 - 这可能是不可能的。您可以通过以下方式对其进行暴力破解:[[UIApplication sharedApplication] terminate];
或者您可以通过以下方式将您的应用程序置于后台指定的持续时间:UIATarget.localTarget().deactivateAppForDuration(seconds);
(使用objc的借口)
您需要先获取设备实例。所以要模拟按下主页按钮:
XCUIDevice.sharedDevice().pressButton(XCUIDeviceButton.Home)
应该可以(在物理设备上对我有用)
谢谢!
马赞
Swift 5 版本:
XCUIDevice.shared.press(XCUIDevice.Button.home)
另外,验证它在模拟器中工作,至少在 Xcode 11.2.1 在模拟 "iPad Pro (9.7-inch)" 运行 iPadOS 13.2.2 上是这样。
Objective C
[XCUIDevice.sharedDevice pressButton: XCUIDeviceButtonHome];
还有 XCUIDeviceButtonVolumeUp
音量增大按钮和 XCUIDeviceButtonVolumeDown
音量减小按钮。
Swift 4:
XCUIDevice.shared.press(.home)
在 Swift 版本 4.0.2 和 4.0.3:
XCUIDevice.shared().press(XCUIDeviceButton.home)
现在 Swift 4.1:
XCUIDevice.shared.press(XCUIDevice.Button.home)