There are 3 classes to embed the web browser into the iOS app.
- UIWebView class
- WKWebView class
- SFSafariViewController class
UIWebView class was deprecated long time ago, now the AppStore doesn’t allow using UIWebView class.
If your app still embeds web content using the deprecated UI…
According to this post, if you upload the apps that uses it, the App Store reject the new apps after April 2020, and updates for exiting apps after December 2020.
According to post in Developer News And Updates on December 23, 2019, UIWebView class was deprecated and apps using it w[…]
What should we do?
Basically, you need to migrate to the WKWebView class, but it is case by case.
If you use the embedded browser to show the support site or authorize with the OAuth2, you can use the SFSafariViewController class. It is able to do above functions. The SFSafariViewController class is a view controller which has same functionality as the Safari. It is a simple web browser.
If you want to authorize the OAuth2 with the SFSafariViewController, you can set the redirect URL to the application specific custom scheme URL and receive the result. The SFSafariViewController class can be hidden, you can show the progress indicator instead of the SFSafariViewController while waiting authorize result.
If you want to know which class should be used the SFSafariViewController or the WKWebView, check the next post.
- Representative of RK Kaihatsu. I am a professional developer specializing in macOS Apps, iOS Apps, SDKs and middleware development. I often use ObjC, Swift and C++. Based on development experience, I provide e-learning contents, technical books and technical guidance. I am also a technical seminar instructor, in-house training instructor, and administrative / local goverment staff training instructor.