ios - Swift 中的 Webview 管理

标签 ios iphone swift

我用 Swift 3 制作应用程序 enter image description here重定向网页 View 后首先登录我的应用程序。如果我单击网页 View 页面中的注销按钮,我想重定向回我的应用程序。我该怎么做?

最佳答案

您可以使用 WKScriptMessage 和 javascript 回调您的 viewController 并执行 native 代码。

在你的 View Controller 中:

//MARK: WKScriptMessageHandler (callback from js in HTML file)
func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage){
    if message.name == "callbackHandler" {
        print(message.body)

        //My function
        if (message.body as AnyObject).contains("myFunctionName"){
            self.playVideo()
        }
    }
}

在您的 HTML 文件中:

<!-- JS for Native Application Callbacks -->
<script type="text/javascript">
    function callNativeApp () {
        //iOS
        try {
            window.webkit.messageHandlers.callbackHandler.postMessage("myFunctionName");
        } catch(err) {
            console.log('The native context does not exist yet');
        }
    }
</script>

关于ios - Swift 中的 Webview 管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42960137/

相关文章:

ios - 谷歌地图路线 API

iphone - 如何将 2 张图像合并/合并为 1 张

ios - 在 Label 中显示整数值,int 到 String 转换?

iphone - 如何更改 UINavigationBar 的背景?

iphone - 带有 phonegap 的 IOS 上的 SQLite

swift - 在单个功能指令中用两个值替换 `if/guard let`

ios - 应用无法找到音频蓝牙 HFP 免提端口 Swift

iphone - Xcode 中缺少 iOS Devtools.Core Framework pbxcp?

ios - NSAttributedString 行尾的 NSKernAttributeName 空格

ios - 如何在远程通知的 alertBody 中显示来自 CKRecord 的数据?