WKWebKit 实现(Objective-C)

Posted

技术标签:

【中文标题】WKWebKit 实现(Objective-C)【英文标题】:WKWebKit Implementation (Objective-C) 【发布时间】:2020-11-02 16:16:26 【问题描述】:

尝试在 ios 中显示网页,但我无法实现 WKWebkit。

ViewController.h

@import WebKit;

@interface ViewController : BaseViewController

@property (retain, nonatomic) WKWebView *webView;

@end

ViewController.m

@interface ViewController ()

@property (strong, nonatomic) IBOutlet UIView *containerView;

@property (strong, nonatomic) IBOutlet NSLayoutConstraint *fieldViewBottomConstraintY;
@property (strong, nonatomic) IBOutlet NSLayoutConstraint *centerCredentialsConstraintY;


@end

@implementation ViewController
@synthesize webView;
-(void) viewDidLoad 
    [super viewDidLoad];
    webView = [[WKWebView alloc] initWithFrame:[[self view] bounds]];
    NSURL *url = [NSURL URLWithString:@"https://www.google.com"];
    NSURLRequest *urlReq = [NSURLRequest requestWithURL:url];

    [webView loadRequest:urlReq];
    [self.view addSubview:webView];
    [self setupConfiguration];
    // Do any additional setup after loading the view.


@end

我收到此错误:

Class Unavailable: WKWebView before iOS 11.0 (NSCoding support was broken in previous versions)

我知道这个问题不是很专注,但是我的时间很紧,还在学习objective-c和iOS,我还没有找到很多可实施的解决方案,所以我需要帮助解决这个问题。感谢您提供的任何帮助。

【问题讨论】:

您是否真的需要针对早于 11 的 iOS? 不,我没有。我该如何改变呢? 【参考方案1】:

这是来自一个要求最低 iOS 版本为 iOS 12 的项目

在此处设置您的最低 iOS 部署目标:

并且,检查它是否在此处自动更新(如果没有,则更改它):

将其设置为您需要支持的最低版本。

【讨论】:

以上是关于WKWebKit 实现(Objective-C)的主要内容,如果未能解决你的问题,请参考以下文章

WKWebKit基础

用于 JavaScript 的 UIWebView 或 WKWebkit?

WKWebkit使用

固定元素在 WKWebkit 上移动

Xcode 6 + iOS 8 SDK 但部署在 iOS 7 (UIWebKit & WKWebKit)

SecurityError (DOM Exception 18): 操作不安全 WKWebkit iOS 10