gpt4 book ai didi

iOS,通过代码锁定设备

转载 作者:技术小花猫 更新时间:2023-10-29 11:22:18 25 4
gpt4 key购买 nike

出于测试目的(制作本地通知的屏幕截图),我需要能够从代码(测试代码或应用程序代码)锁定设备(模拟器)。我从这里 (GSEventLockDevice) 查看了几个答案,但它们已经很老了,对我不起作用

最佳答案

XCUIDevice 中有一个私有(private)方法,因此您可以使用它来锁定设备/模拟器。

Swift 3 的示例:

import XCTest

class LockTests: XCTestCase {
func testExample() {
XCUIDevice.shared().perform(NSSelectorFromString("pressLockButton"))

let localNotification = UILocalNotification()
localNotification.fireDate = Date(timeIntervalSinceNow: 2)
localNotification.alertBody = "This is local notification"
localNotification.timeZone = NSTimeZone.local
localNotification.category = "Message"
UIApplication.shared.scheduleLocalNotification(localNotification)
}
}

并且会收到这样的东西:

enter image description here

我没有使用过您正在使用的快照工具,但您需要知道进入锁定状态需要时间,因此在创建快照之前等待一段时间可能会很有用(您可以使用这样的代码):

let date = Date(timeIntervalSinceNow: 3)
while date.timeIntervalSinceNow > 0 {
CFRunLoopRunInMode(CFRunLoopMode.defaultMode, 0.1, true)
}

此外,您可以在测试结束时通过调用(仅限 iOS 10)返回到 SpringBoard:

XCUIDevice.shared().press(.home)

希望对您有所帮助!

关于iOS,通过代码锁定设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38895668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com