Skip to content

About

A Flutter plugin that allows you to add an inline webview, to use a headless webview, and to open an in-app browser window.

Resources

Stars

1 star

Watchers

0 watching

Forks

 
 

Latest commit

 

History

2,009 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flutter InAppWebView Plugin Share on Twitter Share on Facebook

InAppWebView-logo

All Contributors

flutter_inappwebview version Pub Points Pub Popularity Pub Likes Awesome Flutter License

Donate to this project GitHub forks GitHub stars

Supported Platforms

flutter_inappwebview_platform_interface version flutter_inappwebview_android version flutter_inappwebview_ios version flutter_inappwebview_macos version flutter_inappwebview_windows version flutter_inappwebview_linux version flutter_inappwebview_web version

A Flutter plugin that allows you to add an inline webview, to use an headless webview, and to open an in-app browser window.

Articles/Resources

Showcase - Who use it

Check the Showcase page to see an open list of Apps built with Flutter and Flutter InAppWebView.

Are you using the Flutter InAppWebView plugin and would you like to add your App there?

Send a submission request to the Submit App page!

Requirements

Installation

Otzaria fork

This fork is distributed from Git. Its platform packages use sibling path dependencies so the API and native implementations come from the same commit. They are marked publish_to: none; publishing separate packages requires replacing those paths with compatible published versions first.

dependencies:
  flutter_inappwebview:
    git:
      url: https://github.com/Otzaria/flutter_inappwebview.git
      ref: master # Prefer a tested commit SHA in production.
      path: flutter_inappwebview

Do not combine these packages with overrides pointing to published platform implementations or a different Git revision.

Preparing WebView startup

Call await WebViewEnvironment.prewarm() before creating the first WebView to prepare supported startup work asynchronously. Prewarming is optional: failures are returned as results, and unsupported platforms return null.

Platform Behavior
Windows Loads WebView2 through a temporary environment on a background STA. Pass the same environment settings to prewarm and the later create. Concurrent identical calls share work; completed results are not cached.
Android Uses AndroidX 1.14's experimental startup API with UI tasks disabled. Apply ProcessGlobalConfig first. Only background startup work is warmed; the first WebView still performs UI initialization. Windows settings are ignored. The first outcome is reused within the engine.
Linux prewarm returns null. An explicit WebViewEnvironment.create() can prepare and retain the WebKit context for later views.
iOS, macOS, Web prewarm returns null.

Native startup has a 30-second deadline, with a Dart reply timeout of 31 seconds on Windows and 35 seconds on Android. Provider initialization cannot be interrupted, so its worker may continue after a timeout. Prewarming does not guarantee that subsequent view creation will avoid all startup costs.

Add flutter_inappwebview as a dependency in your pubspec.yaml file.

Platform Installation Setup:

Support

Did you find this plugin useful? Please consider to make a donation to help improve it!

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Alex Li
Alex Li

💻
1/2
1/2

💻
Christofer Bodin
Christofer Bodin

💻
Matthew Lloyd
Matthew Lloyd

💻
C E
C E

💻
Robson Araujo
Robson Araujo

💻
Ryan
Ryan

💻
CodeEagle
CodeEagle

💻
Tanay Neotia
Tanay Neotia

💻
Jamie Joost
Jamie Joost

💻
Matias de Andrea
Matias de Andrea

💻
YouCii
YouCii

💻
Salnikov Sergey
Salnikov Sergey

💻
Po-Jui Chen
Po-Jui Chen

💻
Manuito
Manuito

💻
setcy
setcy

💻
EArminjon
EArminjon

💻
Ashank Bharati
Ashank Bharati

💻
Michael Chow
Michael Chow

💻
Osvaldo Saez
Osvaldo Saez

💻
rsydor
rsydor

💻
Le Minh Hoang
Le Minh Hoang

💻
Michael Kao
Michael Kao

💻
cloudygeek
cloudygeek

💻
Christoph Eck
Christoph Eck

💻
Ser1ous
Ser1ous

💻
Caleb Jones
Caleb Jones

💻
Saverio Murgia
Saverio Murgia

💻
Trần Đức Tâm
Trần Đức Tâm

💻
Joker
Joker

💻
Yash Chandra Verma
Yash Chandra Verma

💻
Arne Kepp
Arne Kepp

💻
Ömral Cörüt
Ömral Cörüt

💻
LrdHelmchen
LrdHelmchen

💻
Steven Gunanto
Steven Gunanto

💻
Michael Rittmeister
Michael Rittmeister

💻
Akira Aratani
Akira Aratani

💻
Doflatango
Doflatango

💻
Edmund Tay
Edmund Tay

💻
Andrei Diaconu
Andrei Diaconu

💻
Daniel Kao
Daniel Kao

💻
xuty
xuty

💻
Ben Bieker
Ben Bieker

💻
Phạm Như Vũ
Phạm Như Vũ

💻
SebastienBtr
SebastienBtr

💻
NeZha
NeZha

💻
Jan Klinge
Jan Klinge

💻
PauloDurrerMelo
PauloDurrerMelo

💻
benmeemo
benmeemo

💻
cinos
cinos

💻
Rex Raphael
Rex Raphael

💻
Jan Henrik Høiland
Jan Henrik Høiland

💻
Iguchi Tomokatsu
Iguchi Tomokatsu

💻
Jonas Uekötter
Jonas Uekötter

📖 💻
emakar
emakar

💻
liasica
liasica

💻
Eiichiro Adachi
Eiichiro Adachi

💻
Kamil Powałowski
Kamil Powałowski

💻
Akio Yamamoto
Akio Yamamoto

💻
mohenaxiba
mohenaxiba

💻
Ben Anderson
Ben Anderson

💻
Daan Poron
Daan Poron

🛡️
ふぁ
ふぁ

💻
perffecto
perffecto

💻
Chandra Abdul Fattah
Chandra Abdul Fattah

💻
Aleksandar Lugonja
Aleksandar Lugonja

💻
Alexandre Richonnier
Alexandre Richonnier

💻
Sunbreak
Sunbreak

💻
Eric Lee
Eric Lee

📖
KhatibFX
KhatibFX

💻
Guide.inc
Guide.inc

💻
Niraj Nandish
Niraj Nandish

💻
nesquikm
nesquikm

💻
Andreas Gangsø
Andreas Gangsø

💻
Alexandru Terente
Alexandru Terente

💻
Dango Mango
Dango Mango

💻
Max Zimmermann
Max Zimmermann

💻
Alexandru Dochioiu
Alexandru Dochioiu

💻
YumengNevix
YumengNevix

💻
lrorpilla
lrorpilla

💻
Michal Šrůtek
Michal Šrůtek

💻
daisukeueta
daisukeueta

💻
Gray Mackall
Gray Mackall

💻
Pavel Mazhnik
Pavel Mazhnik

💻
nlog (solrin)
nlog (solrin)

💻
Murmurl912
Murmurl912

💻
Benjamin Schulz
Benjamin Schulz

🤔
seal-app
seal-app

💻
Takuya Tominaga
Takuya Tominaga

💻
Sergey
Sergey

💻
yuanbo li
yuanbo li

💻
Ryan Feline
Ryan Feline

💻
Jeff Ward
Jeff Ward

⚠️
Yelzhan Yerkebulan
Yelzhan Yerkebulan

💻
GooRingX
GooRingX

💻
Robodoh
Robodoh

💻
imoyakin
imoyakin

💻
laishere
laishere

💻
Marco Muccinelli
Marco Muccinelli

💻
momadvisor
momadvisor

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

About

A Flutter plugin that allows you to add an inline webview, to use a headless webview, and to open an in-app browser window.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages