公開日: 2014 年 2 月 28 日、最終更新日: 2024 年 12 月 18 日
WebView コンポーネントは、Chromium オープンソース プロジェクトをベースにしています。WebView は Android 版 Chrome と同じレンダリング エンジンを共有するため、WebView と Chrome でレンダリングが整合している必要があります。また、WebView には APK があるため、Android とは別に更新できます。
- WebView ベースの Android アプリを開発する場合は、スタートガイドをご覧ください。
- 主にアプリ内で外部ウェブ コンテンツを表示する場合は、代わりにカスタムタブの使用を検討してください。
- モバイル デバイス向けに WebView コンテンツをスケーリングする方法については、WebView の Pixel-Perfect UI をご覧ください。
WebView は、Chrome DevTools を使用したリモート デバッグもサポートしています。
WebView の更新
モバイル デバイスの WebView の自動更新。アプリを将来に備えて、ベータ版 WebView を使用して、WebView のバージョンをリリース前にテストできます。
Chrome for Android と WebView
WebView はオープンソースの Chromium プロジェクト上に構築されていますが、Google Chrome とデータを共有することはありません。
Android 7(Nougat)、8(Oreo)、9(Pie)では、WebView は Chrome に組み込まれています。基盤となるコードを多く共有するため、デバイスのスペースとメモリを節約できます。ただし、Chrome と WebView はデータを共有しません。Google Chrome はいつでも無効にできます。WebView は、Chrome と統合されていないスタンドアロン バージョンに切り替わります。
Android 10(Q)では、WebView と Chrome は引き続きデバイスのスペースとメモリを節約するためにコードの大部分を共有しますが、2 つの個別のアプリとして表示されます。Chrome を無効にする際の特別な動作はなくなりました。
WebView は Android 版 Chrome と機能的に同等ですか?
ほとんどの場合、Android 版 Chrome で動作する機能は WebView でも動作します。
Android 7、8、9 では WebView と Google Chrome がパッケージを共有していますが、Google Chrome 固有の機能は共有していません。たとえば、WebView 内では同期とデータ節約を利用できません。
ハードウェア センサー API のサポート
一部の API を使用すると、Android デバイスのハードウェア センサーにアクセスできます。Android 版 Chrome ではこれらの API の一部がサポートされていますが、WebView で有効になっている API は一部です。
API | WebView v33 | WebView v55 |
---|---|---|
Geolocation API(android.permission.ACCESS_COARSE_LOCATION 権限または android.permission.ACCESS_FINE_LOCATION 権限が必要) |
✓ | ✓ |
Device Orientation API | x | ✓ |
メディアのキャプチャとストリーミング | x | ✓ |
Vibration API(android.permission.VIBRATE 権限が必要) |
✓ | ✓ |
ハードウェア アクセラレーションを有効にすべきか
ハードウェア アクセラレーションはデフォルトで有効になっています。