如何检查我是否在cordova应用程序中使用WKWebview而不是UIWebview

abithluo  于 2022-11-15  发布在  其他
关注(0)|答案(1)|浏览(144)

当我使用Adobe PhoneGap Build时,我的应用程序出现了显示问题。不知何故,我通过将UIWebveiw迁移到WKwebview解决了这个问题。由于PhoneGap Build结束了它的服务,我试图使用cordova命令来构建我的应用程序,同样的问题发生了。
我尝试了几个config.xml设置,也尝试将Xcode的“构建设置”〉“用户定义”〉“WK_WEB_VIEW_ONLY”设置为1,但仍然存在这个问题。
我不确定我是否正在使用WKwebview。如果不是,我的设置有什么问题?如果是,我下一步应该尝试什么?
以下是我构建应用程序的方法:
1.我通过cordova create <Folder> <BundleID> <MyProjectName>创建项目
1.把我的网站到“www”文件夹
1.然后是cordova platform add ios(我使用的是cordova-ios@6.2.0)
1.点击my .xcodeproj,然后点击Xcode中的构建按钮(类似“播放”的三角形按钮)。
下面是我的config.xml:

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.test.test" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    <name>test</name>
    <description>Sample Apache Cordova App</description>
    <author email="dev@cordova.apache.org" href="https://cordova.apache.org">
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <preference name="WKWebViewOnly" value="true" />

    <feature name="CDVWKWebViewEngine">
        <param name="ios-package" value="CDVWKWebViewEngine" />
    </feature>

    <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
</widget>

my files image
这里是我的主要.m,我不熟悉swift,但它似乎使用UIWebveiw而不是WKwebview在我的应用程序.

#import <UIKit/UIKit.h>

int main(int argc, char* argv[])
{
    @autoreleasepool {
        int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");
        return retVal;
    }
}

这个问题困扰了我很长时间,我不知道为什么和如何。提前感谢你。

rqdpfwrv

rqdpfwrv1#

如果您已经升级到Cordova iOS 6+,则无需再指定WKWebView,因为默认情况下它是WebView。

<preference name="WKWebViewOnly" value="true" />
<feature name="CDVWKWebViewEngine">
    <param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />

这些在 cordova 已经过时了
请参阅thisthis

相关问题