小编bat*_*str的帖子

WKWebView进程终止而没有沙盒授权

我正在尝试使用网络视图构建一个简单的MacOS应用程序。我正在使用WKWebView并且没有明显的原因,webViewWebContentProcessDidTerminate()在初始化Web视图后立即调用该方法,而没有Web视图,甚至尝试加载任何内容。经过数小时的浏览文档和在线问题,我无法弄清楚为什么会发生这种情况以及如何防止这种情况发生。在线建议的唯一一件事是在发生这种情况时重新加载Web视图,这将导致稍后再次调用该方法,以此类推。我现在使用以下源代码浏览一个完全空白的MacOS应用程序:

class AppDelegate: NSObject, NSApplicationDelegate {

    @IBOutlet weak var window: NSWindow!
    var webView: WKWebView!

    func applicationDidFinishLaunching(_ aNotification: Notification) {
        webView = WKWebView(frame: .zero, configuration: WKWebViewConfiguration())
        webView.navigationDelegate = self
    }
}

extension AppDelegate: WKNavigationDelegate {
    func webViewWebContentProcessDidTerminate(_ webView: WKWebView) {
        print("web view process did terminate")
        webView.reload()
    }
}
Run Code Online (Sandbox Code Playgroud)

Web视图是否在视图层次结构中,是否具有非零框架以及通常是否可见均无关紧要。我还启用了任意负载,只是为了尝试所有内容。

我真的很感谢这方面的帮助。我正在针对10.13 SDK进行编译,并在MacOS 10.12上运行。

谢谢。

macos cocoa appstore-sandbox wkwebview

2
推荐指数
1
解决办法
608
查看次数

XCTest:有没有办法在 UI 测试中通过 ID 查找任何类型的视图?

在 XCTest 中,有一种方法可以按类型获取所有 UI 元素,然后按 AccessibilityIdentifier 进行过滤,例如:

app.buttons[someID]
Run Code Online (Sandbox Code Playgroud)

但是如果我不知道视图的类型怎么办?如果我正在寻找 UIView,我可以写:

app.otherElements[someID]
Run Code Online (Sandbox Code Playgroud)

但这不包括 UIButton 视图。

我可以通过连续调用所有方法(staticTexts、textViews、buttons、otherElements 等)来实现这一点,但有些东西告诉我它的性能不是很好,因为类型列表很大。

有没有通用的方法?

ios xctest xcode-ui-testing

2
推荐指数
1
解决办法
1227
查看次数