标签: safariservices

UIKitCore崩溃[UIViewController viewDidMoveToWindow:shouldAppearOrDisappear:]仅限iOS 12

我得到了大量的崩溃报告给了Crashlytics.这只发生在iOS 12上,我不知道如何重现这一点.也许用户在WKWebView上并尝试从提示中输入密码31 SafariServices 0x21d216740 __107+[_SFAutomaticPasswordInputViewController inputViewControllerWithAutoFillContext:passwordRules:completion:]_block_invoke.29 + 104

如果有人有类似的崩溃或想法,我们非常感谢.

更新:此问题正在跟踪:https://github.com/firebase/firebase-ios-sdk/issues/2283感谢Igor

Crashed: com.apple.main-thread
0  libsystem_kernel.dylib         0x207743df8 __abort_with_payload + 8
1  libsystem_kernel.dylib         0x20773d838 abort_with_payload_wrapper_internal + 100
2  libsystem_kernel.dylib         0x20773d7d4 abort_with_payload_wrapper_internal + 34
3  libobjc.A.dylib                0x206d7d4b4 _objc_fatalv(unsigned long long, unsigned long long, char const*, char*) + 112
4  libobjc.A.dylib                0x206d7d40c __objc_error + 42
5  libobjc.A.dylib                0x206d94af0 weak_entry_insert(weak_table_t*, weak_entry_t*) + 314
6  libobjc.A.dylib                0x206d95a60 objc_initWeak + 360
7  UIKitCore                      0x23457508c -[UIViewController viewDidMoveToWindow:shouldAppearOrDisappear:] + 1628
8  UIKitCore                      0x234fcaff8 -[UIView(Internal) …
Run Code Online (Sandbox Code Playgroud)

ios ios12 safariservices

14
推荐指数
1
解决办法
2404
查看次数

NSExtensionRequestHandling 不处理本机消息

我正在尝试为我的本机应用程序创建 Safari Web 扩展。我想要一个带有按钮的弹出窗口,单击该按钮将与我的本机应用程序进行通信。在开始这部分之前,我在发送本机消息并在beginRequest符合NSExtensionRequestHandling协议的类的函数中处理它时遇到了问题。我没有做太多事情,因为我依赖于 Xcode 生成的代码。

manifest.json我添加了这样nativeMessaging的权限:

"permissions": [ "nativeMessaging" ]
Run Code Online (Sandbox Code Playgroud)

popup.js其中包含事件监听器:

console.log("Hello World!", browser);

document.addEventListener('DOMContentLoaded', function() {
    var checkPageButton = document.getElementById('clickIt');
    checkPageButton.addEventListener('click', function() {
        console.log("click")
        browser.runtime.sendNativeMessage({ message: "Hello" });
    }, false)
}, false)
Run Code Online (Sandbox Code Playgroud)

当我检查弹出元素时,我可以看到消息Hello World并显示click消息,但正如我之前提到的 -beginRequest没有被调用。有什么遗漏吗?我也观看了WWDC20 的Meet Safari Web Extensions 会议,但没有找到答案。

javascript safari-extension safariservices safari-web-extension

5
推荐指数
1
解决办法
1374
查看次数

使用 Safariservices swift 如何围绕小黑匣子进行编码

使用 SFSafariViewController 效果很好,但由于某种原因,当我访问此网页 [knowitall.ch] 时,它会通过打开缩放视图来启动?有一个小黑框,我需要按下它才能获得完整的网页。

在此输入图像描述

我的代码再简单不过了。

if let url = URL(string: url2U) {
        let vc = SFSafariViewController(url: url, entersReaderIfAvailable: true)
        vc.delegate = self
        present(vc, animated: true)
    }
Run Code Online (Sandbox Code Playgroud)

如果我按下该框,我会得到正确的视图,如何对此进行编码,以便我在此处打开第二个视图?不需要黑匣子:)

在此输入图像描述

ios swift sfsafariviewcontrollerdelegate safariservices

3
推荐指数
1
解决办法
493
查看次数