comment 0

いち早くiOS 9でWKWebViewを試せるCordova WKWebView Polyfill Plugin

やはり、iOS 9ではUIWebViewを使うのは現実的ではないらしく、一応Angular.jsの世界ではモンキーパッチが提供されているようですが、当方Angular.jsがブームになる前からのアプリを保守しているため使うことができず。。。

iOS 9でCordovaアプリを開発する上での問題は、このシルバーウィーク中に2本既に書いています。

https://inoccu.com/blog/2015/09/19/23…

WKWebViewに移行するしかなさそうなのですが、鉄板ルートのCordova iOS 4.0の提供はまだもう数日?はかかりそう。
まだBeta版にも至っていない状況ですが、開発中のコードをGitHubから持ってきて試してみても、いまいちちゃんと動かない感じ

Cordova WKWebView Polyfill Pluginを試してみる

そんな中で見つけたのが、Cordova WKWebView Polyfill Plugin。

telerik-verified-plugins-wkwebview_092415_115854_PM

Polyfillとは、CSSの世界なんかでよく聞きますが、こういう意味。

古いブラウザーに欠けている部分、新しいブラウザーでも足りない機能の穴を埋めることを、ポリフィル (polyfill) という風に呼ばれています。

もともと、壁の穴を埋めるための有名な商品で Polyfilla (ポリフィラ) というのがあり、ブラウザの穴を埋めるという行為も名前からポリフィルという言葉を動詞として使ったということです。

そんな語源があったのですね。

インストール

cordova plugin add @telerik/cordova-plugin-wkwebview
cordova prepare

インストールは簡単で、Cordovaの通常の形式でインストールできます。
プラグインをインストールするだけで、それ以外の作業は特に必要なく、iOS8以上ならWKWebView、それ未満ならUIWebViewが使用されるようになります。

インストールの際に、合わせてcordova-plugin-webserverが導入されます。

このwebserverプラグインがポイントで、例えばCordovaアプリのViewに相当するindex.htmlは、file://~ではなくて、http://localhost~でアクセスされます。そのため、CORS問題が回避できるのです。

WKWebViewを使ったからといって全て解決ではない

残念なことですが、WKWebViewを使ったからといって、iOS 8までで動作していたCordovaアプリが完全に動くようになるわけではありません。
UIWebViewとWKWebViewは完全に上位互換というわけではなく、仕様上の違いがありますし、現状ではそれ以外の問題が発生することもあります。

そういう意味では、Cordova WKWebView Polyfill PluginでWKWebViewでの一応の動作は確認できるけれども、Codova iOS 4.0の正式リリースも待つ必要があるのではないかと思います。

Filed under: プログラミング

About the Author

Posted by

ITエンジニア/経済産業省推進資格ITコーディネータ 株式会社ビビンコ代表取締役 AI・IoTに強いITコーディネータとして活動していたところ、ビジネスコンテスト「北九州でIoT」での入選をきっかけに、株式会社ビビンコを創業。IoTソリューションの開発・導入や、画像認識モデルを活用したアプリの開発などを行う。 日本全国でセミナー・研修講師としての登壇も多数。 近著に「使ってわかった AWSのAI」、「ワトソンで体感する人工知能」。

コメントを残す