wkwebviewとは?初心者でもわかる使い方と仕組みを徹底解説共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
wkwebviewとは?初心者でもわかる使い方と仕組みを徹底解説共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


wkwebviewとは何か

wkwebviewはiOSやmacOSのアプリの中でWebページを表示するための部品です。WebKitを使って高速にウェブページを表示し、JavaScriptの実行やCSSの適用もサポートします。

wkwebviewの仕組み

従来のUIWebViewは停止・非推奨となり、WKWebViewが登場しました。プロセスでレンダリングを行う設計のため、UIの応答性が向上し、メモリ消費も抑えられます。

なぜwkwebviewが選ばれるのか

高速なJavaScript実行、セキュリティ機能の強化、Webページの正確なレンダリングが大きな理由です。

使い方の基本

はじめにWKWebViewのインスタンスを作成します。Swiftの例を言葉で説明すると、まずWebKitをインポートし、WKWebViewConfigurationを設定してからWKWebViewを初期化します。次にURLを読み込むにはloadまたはloadURLのようなメソッドを呼びます。実際のコードはここでは省略しますが、公式のドキュメントに詳しいサンプルがあります。

項目説明
レンダリングWebKitエンジンで高速に表示
セキュリティサンドボックス化と最新のポリシーを適用
実行環境iOS・macOSのアプリ内で動作

セキュリティとパフォーマンスのポイント

WKWebViewはサンドボックス化された実行環境で動作するため、アプリとWebコンテンツの間の影響を分離します。

パフォーマンスの向上ポイントとして、URLのプリフェッチ、イベントの最適化、JSの非同期実行などが挙げられます。

よくある質問

Q: wkwebviewとUIWebViewの違いは?
WKWebViewはパフォーマンスとセキュリティが向上した新しいレンダリングコンポーネントです。UIWebViewは古く、現在は非推奨です。
Q: 使い方は難しい?
基本はシンプル。SwiftでWKWebViewを配置してURLを読み込むだけです。公式のサンプルが参考になります。

以上がwkwebviewの基本的な説明です。初心者の方は最初は公式ドキュメントの手順を確認し、簡単なWebページを表示するところから始めましょう。


wkwebviewの同意語

WKWebView
AppleのWebKitを使ってWebコンテンツを表示する、iOS/macOS共通のWeb表示ビュー。JavaScriptの実行・ページ操作・セキュアな読み込みなどをサポートし、旧来のUIWebViewの後継として推奨されるクラスです。
UIWebView
かつてiOSで使われていたWeb表示ビュー。WKWebViewの登場で非推奨となっており、現在は新規実装での使用は避けるべき古い実装です。
WebView
ウェブページを表示するビュー全般を指す総称。iOS/macOSではWKWebViewやUIWebViewなどが具体的な実装として用いられます。
WebView (iOS)
iOS向けのWeb表示ビューを指す一般的な名称。実装は主にWKWebViewで行われます。
WebView (macOS)
macOS向けのWeb表示ビューを指す用語。実装はWKWebViewが中心です。
WebKit WebView
WebKitフレームワークのウェブ表示機能を指す表現。実際にはWKWebViewを指すことが多いです。
iOS WebView
iOSでWebコンテンツを表示するビューを指す一般的な表現。代表的な実装はWKWebViewです。

wkwebviewの対義語・反対語

ネイティブUIのみ表示
WKWebViewを使わず、ネイティブのUI要素だけで画面を構成して表示すること。ウェブページを表示せず、アプリ内の部品だけで完結します。
純粋なネイティブ画面
Webレンダリングを一切行わず、iOS/Androidのネイティブ画面のみでUIを作ること。
Webビューを使わない表示
WKWebViewや類似のWebビューを組み込まず、ウェブコンテンツを表示しない表示方式のこと。
外部ブラウザで表示
Webページをアプリ内のWebビューで表示せず、端末に搭載されている外部ブラウザで開くこと。
内蔵ブラウザを使わない
アプリ内でのWeb表示機能(WKWebView等)を使わず、ネイティブUI中心の表示にすること。
UIWebView
WKWebViewの旧式・代替として使われた古いWebビューAPI。現在は非推奨だが、対語として挙げる場合の目安になります
Webコンテンツを表示しないモード
Webページのレンダリングをオフにして、ウェブコンテンツを表示しないモード。
オフライン・ローカルUIのみ
ネット接続不要なローカルリソースだけでUIを構成し、ウェブを使わない状態。

wkwebviewの共起語

WKWebView
iOS/macOSアプリ内でウェブコンテンツを表示するための、WebKitベースのビュー。
WebKit
ウェブレンダリングエンジンとフレームワーク。WKWebViewはこのエンジンを使ってページを描画する。
UIWebView
かつてのウェブ表示部。現在は非推奨で、WKWebViewへの移行が推奨される。
Swift
WKWebViewを操作する主なプログラミング言語のひとつ。
Objective-C
古いコードベースでWKWebViewを使うときに用いられる言語。
JavaScript
WKWebView内で実行されるスクリプト。ページとネイティブの連携に用いられる。
HTML
ウェブページの基本構造。WKWebViewはHTMLをレンダリングして表示する。
CSS
ウェブページのデザインを決めるスタイル言語。WKWebViewでも適用される。
DOM
ドキュメントオブジェクトモデル。JavaScriptから操作する対象。
WKNavigationDelegate
ページの読み込み開始・完了・失敗などのナビゲーションイベントを扱うデリゲート。
WKUIDelegate
アラート表示や新しいウィンドウの扱いなど、UI挙動を制御するデリゲート。
WKScriptMessageHandler
JavaScriptとネイティブ間でメッセージをやり取りする連携機構。
evaluateJavaScript
WKWebView内のJavaScriptを実行して結果を受け取るメソッド
loadRequest
URLリクエストをWKWebViewに読み込ませる代表的な方法(URLRequestを渡す)。
loadHTMLString
HTML文字列を直接表示するための読み込みメソッド。
URLScheme
カスタムURLスキームの活用と、外部連携時の遷移ルール
UserAgent
WKWebViewのユーザーエージェント文字列を取得・変更する設定。
Cookies
ウェブサイトとのセッション情報を保持・送受信するクッキーの管理。
Caching
ウェブコンテンツのキャッシュ挙動を制御してパフォーマンスを最適化。
CACHEPolicy
キャッシュの利用方針を指定する設定項目。
CORS
クロスオリジンリソース共有の挙動と制限に関連する話題。
ContentSecurityPolicy
セキュリティポリシーを設定して外部リソースの読み込みを制御。
WKContentRuleList
コンテンツブロックのルールを定義して外部リソースの読み込みを制御する機能。
Security
安全な表示とデータ保護の実践。
Privacy
データ収集・追跡防止など、プライバシー対応の話題。
Performance
描画速度・メモリ使用量・滑らかな動作を達成する最適化。
Debugging
デバッグ方法・ツール・ログの活用。
Accessibility
視覚・聴覚などの支援技術に対応するアクセシビリティ
iOS
主にiPhone/iPadで動作するOS。
macOS
デスクトップ版のOSでWKWebViewが動作する環境。
Safari
同じWebKitエンジンを使うウェブブラウザ。挙動の参考になることが多い。
AppStoreGuidelines
アプリ内ウェブ表示に関する審査観点・ルール。
WKProcessPool
同一アプリ内のWKWebView間でプロセスリソースを共有する設定。
WebView
ウェブコンテンツを表示するビューの総称。WKWebViewはその一種。
JavaScriptCore
JavaScriptを実行するエンジン。WKWebView内部のJS実行にも関係。
PostMessage
JSとネイティブ間のメッセージ送信の一般的名称。
ContentInsetAdjustmentBehavior
クロールビュー内のコンテンツ配置の自動調整設定。
URLRequest
ウェブへ送るURLリクエストを表すFoundationクラス。

wkwebviewの関連用語

WKWebView
iOS/macOSで使われるWebページ表示用のビュー。UIWebViewの後継で、WebKitベースの高速なWebブラウザ機能をアプリ内に組み込む。
WKWebViewConfiguration
WKWebViewの動作を設定するオブジェクト。JavaScriptの許可設定、データストア、ユーザースクリプトの有無などをまとめる
WKPreferences
WebViewの動作設定の集合。JavaScriptの実行許可、フォントサイズなどのUI系設定を含む。
WKWebsiteDataStore
WebViewが管理するデータストア。クッキーやキャッシュ、ローカルストレージなどを保存する場所。
WKProcessPool
複数のWKWebViewが共通して使うプロセスを管理するリソース。セキュリティとパフォーマンスの向上に関わる。
WKUserContentController
WebViewとネイティブ間のブリッジを提供するコントローラー。メッセージハンドラやユーザースクリプトを登録する。
WKUserScript
Webページへ挿入するJavaScript。読み込み時点や読み込み完了時点など、挿入タイミングを指定して実行できる。
WKScriptMessageHandler
JavaScriptからネイティブへメッセージを送るための受け口。アプリ側でそのメッセージを処理する。
WKNavigationDelegate
WebViewのナビゲーションイベントを処理するデリゲート。ページの読み込み開始・完了・失敗、リンクのポリシー決定などを扱う。
WKUIDelegate
UI関連のイベントを処理するデリゲート。アラート表示や新規ウィンドウの作成、JavaScriptのダイアログの処理などを担当。
evaluateJavaScript
ネイティブからWebView内のJavaScriptを実行するメソッド。結果をコールバックで受け取ることができる。
loadRequest
URLリクエストをWebViewに読み込ませる基本的な方法。HTTP/HTTPSのページを表示する際に使用。
loadHTMLString
HTML文字列を直接WebViewに読み込ませる方法。ローカルで生成したコンテンツを表示するのに便利。
URLRequest
リソースへアクセスするためのリクエストオブジェクト。URLやパラメータ、ヘッダを設定する。
URL
表示するページのアドレスを指す文字列。httpやhttpsで始まる場所を表す。
WKBackForwardList
WebViewの履歴リスト。過去に訪れたページの履歴を管理し、戻る・進む操作をサポート
IndexedDB
Webページが大容量データをブラウザ内に保存できる仕組み。WebKitベースの環境でもサポートされる場合がある。
LocalStorage
Webページがキーと値をローカルに保存する仕組み。WebStorageの一部として扱われる。
HTTPCookie
Webページのクッキーを表すデータ。サイト間でのセッション管理に使われる。
ContentSecurityPolicy
Webページのセキュリティポリシー。どのスクリプトやリソースを読み込むかを制約する。
WebKit
WebViewのレンダリングエンジンの基盤。WKWebViewはこのWebKitを利用してWebページを描画する。
JavaScriptBridge
WebViewとネイティブ間の連携機構の総称。JavaScriptとSwift/Objective-Cの相互通信を可能にする。

wkwebviewのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
14344viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2382viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1059viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1017viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
912viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
885viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
819viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
815viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
787viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
770viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
703viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
661viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
581viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
556viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
544viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
542viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
502viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
475viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
461viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
443viws

新着記事

インターネット・コンピュータの関連記事