WKWebViewでLocalStorageやJavascriptが使えない場合
のえる
2016.09.05
どうも、のえるです。
このところ忙しくてブログが滞っていました。
だめですね、きちんと習慣にしなくては・・・。
さて、今回はiPhoneのWKWebViewのお話です。
WKWebViewとは、iOS8から使用可能になった、UIWebViewに代わる新しいUIです。
様々な情報がネット上で出ていますが、なかなかピンポイントな情報を掲載しているサイトは少ないです。
そこで、今回は弊社で開発中に起きた問題を取り上げてみようと思います。
それはタイトルの通り「WKWebViewでLocalStorageが使用できない」というものです。
ネット上の情報を使い、WKWebViewを作成しているときにUI/UX班から上がってきた内容でした。
しかし、調べても全然情報は出てこず・・・。
最終的に見つけた回答の一つは下記のとおりです。
1 2 3 4 5 |
// WebViewの設定を作成 let webViewConf = WKWebViewConfiguration() // LocalStorageを許可 webViewConf.websiteDataStore = WKWebsiteDataStore.defaultDataStore() webViewConf.userContentController = webUserContentController |
この「WKWebViewConfiguration」の「websiteDataStore 」を設定してあげることで、LocalStorageが使用できるようになります。
このパラメータに「WKWebsiteDataStore.nonPersistentDataStore()」を設定すると、いわゆるシークレットモードで動作します。
また、JavaScriptを使用したい場合は下記のようになります。
1 2 |
let webViewConf = WKWebViewConfiguration() webViewConf.preferences.javaScriptEnabled = true |
いかがですか?
JavaScriptと連携したハイブリッドアプリなどを開発する際の参考になれば幸いです。
ではではー。
- おすすめ記事
-
-
のえる2016.07.06
-
UIColorからNSUInteger(16進数)に変換する方法
のえる2016.05.19 -
iPhoneアプリで画面遷移をする方法
のえる2015.12.14
-
POPULAR
のえる
Full-stack Developer