ハコベルカーゴの開発を担当している貞元です。ハコベルカーゴでは、ドライバー向けのiOS・Androidアプリがあり、どちらも主にWebViewを使用しています。iOSアプリではUIWebViewを使用していたのですが、こちらは非推奨となり更新できなくなるためため、WKWebViewへ移行した内容を紹介します。2020年11月時点では、UIWebViewを使用したアップデート期限は2020年末以降に延長されているため、正式な期限はAppleのニュースをご確認ください。iOSアプリ開発の経験は豊富ではないため、定番と異なる点などあるかもしれません。WebKit.frameworkを追加WKWebViewはWebKit.frameworkに含まれているため、WebKit.frameworkを追加します。StoryBoardのUIWebViewをWKWebKitへ置き換え既存のUIWebViewはStoryBoardに配置し使用していました。そのため、WKWebViewも同じくStoryBoardへ配置し使用します。11.0以上へ変更する必要があります。dataDetectorTypesについてWKWebViewにはUIWebViewと同様にdataDetectorTypesが存在します。StoryBoardを使用した場合はコード上で変更しても適用されないため、こちらで設定が必要です。WKUIDelegateの2種類のDelegateが存在します。promptを使用している場合はWKUIDelegateが必要です。カスタムURLスキームについてtelやmail、その他カスタムURLスキームはそのままでは動作しません。そのため、decidePolicyForにて処理する必要があります。JavaScript呼び出しの変更UIWebViewにてJavaScriptを呼び出しにstringByEvaluatingJavaScriptを使用していました。WKWebViewではevaluateJavaScriptを使用します。こちらは非同期の実行となるため、挙動が変わらないように同期実行用のメソッドを用意し、そちらへ置き換えを行いました。Cookie参照の変更UIWebViewではCookieの参照にHTTPCookieStorage.sharedを使用していました。WKWevViewではHTTPCookieStorage.sharedへ反映されず参照できないため、WKWevViewから参照するように変更しています。}}まとめWKWebViewへの変更期限が近づいています。iOSアプリ開発の経験は豊富ではないため、調査・変更・テストを繰り返して対応しました。この記事がWKWebViewの移行の手助けとなると幸いです。採用情報のご案内ラクスルではエンジニア・プロダクトマネージャーを募集中!募集内容は以下のリンクをご確認ください。地域LT会はじめました。eventハコベルテックブログ注目記事はてなブログをはじめよう!raksuldevさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。