チャンマツ

2018.05.07

【Swift4】WKWebviewでWebViewアプリをつくる

お久しぶりです。

最近はプロデューサー業が捗っている、
Webインテグレーション部の松本です。

今回はPHPerな僕がIOSのエントリーを書かせていただきます。
ちなみにIOS自体は4年前くらいにObjective-Cを数ヶ月だけ触った程度です。

基本的にWebViewを表示するためだけのアプリになるので
このままではAppStoreの承認が通らないと思いますので、ご留意ください。

 

以前はUIWebViewを利用していた記憶があったのですが、今回は現在推奨されているWKWebViewで作成しようと思います。

WKWebViewの公式ドキュメントは以下です。
https://developer.apple.com/documentation/webkit/wkwebview

それでは早速作ってみましょう。

 

環境とターゲット

  • Xcode(9.3)
  • Swift(4.1)
  • Build iOS(11.3)

 

プロジェクト作成

まずはプロジェクトを作っていきます。

Single View Appを選んで。

言語はSwiftを選んでいきましょう。
Unit TestsやUI Testsは今回は不要なのでチェックを外してしまって問題ないです。

それではプログラミングしていきましょう。

 

WebKitをインポートして、WKWebViewの宣言後、WKWebViewをインスタンス化してサクッとブラウザを表示するところまで作ります。

 

一旦これだけで、指定されたURLが起動するWKWebViewが完成します。

 

動画のインライン再生に対応

Webアプリ内で動画をインライン再生するため、

コンフィグを設定しインスタンス化するときに引数として加えます。

 

UserAgentの変更

WebViewのUserAgentを変更する際IOS9以降であれば簡単に変更する事ができます。

customUserAgentに設定値があればそちらを優先するようになっているようです。

今回のターゲットはIOS11なのでサクッと設定致します。

 

これで一通りのプログラムが完成しました。

 

 

ということで、すごく簡単にWebViewを利用したIOSアプリを作成することができました。

はじめにもお伝えしましたが、この状態ではアプリの申請が通りにくと思いますので、その点ご留意ください。