Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ITMS-90809: UIWebView API Deprecation #69

Open
matrad opened this issue Oct 5, 2020 · 0 comments · May be fixed by #70
Open

ITMS-90809: UIWebView API Deprecation #69

matrad opened this issue Oct 5, 2020 · 0 comments · May be fixed by #70

Comments

@matrad
Copy link

matrad commented Oct 5, 2020

Hello,

when we're deploying a new app using the KINWebBrowser, we get this message:

https://developer.apple.com/news/?id=12232019b
If your app still embeds web content using the deprecated UIWebView API, we strongly encourage you to update to WKWebView as soon as possible for improved security and reliability. WKWebView ensures that compromised web content doesn’t affect the rest of an app by limiting web processing to the app’s web view. And it’s supported in iOS and macOS, and by Mac Catalyst.

The App Store will no longer accept new apps using UIWebView as of April 2020 and app updates using UIWebView as of December 2020.

We see that in the WKWebView Library you check if WKWebView is enabled and do not use the UIWebView in this case, but for the automatic review I think it's enough for Apple that the UIWebView class has any reference in the code.

- (id)initWithConfiguration:(WKWebViewConfiguration *)configuration {
    self = [super init];
    if(self) {
        if([WKWebView class]) {
            if(configuration) {
                self.wkWebView = [[WKWebView alloc] initWithFrame:CGRectZero configuration:configuration];
            }
            else {
                self.wkWebView = [[WKWebView alloc] init];
            }
        }
        else {
            self.uiWebView = [[UIWebView alloc] init];
        }
        
        self.actionButtonHidden = NO;
        self.showsURLInNavigationBar = NO;
        self.showsPageTitleInNavigationBar = YES;
        
        self.externalAppPermissionAlertView = [[UIAlertView alloc] initWithTitle:@"Leave this app?" message:@"This web page is trying to open an outside app. Are you sure you want to open it?" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Open App", nil];
        
    }
    return self;
}

so I think the best would be if you drop the UIWebView integration and release a new version without?

matrad added a commit to matrad/KINWebBrowser that referenced this issue Oct 5, 2020
matrad added a commit to matrad/KINWebBrowser that referenced this issue Oct 5, 2020
feat: removed deprecated UIWebView fixes dfmuir#69
matrad added a commit to matrad/KINWebBrowser that referenced this issue Oct 5, 2020
matrad added a commit to matrad/KINWebBrowser that referenced this issue Oct 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant