In App browser vs Web View vs Embedded browser What's the difference?
Asked Answered
S

4

9

Could anyone share an exact definition of In-App Browser, Web View or Embedded browser?

  • Google uses the term, embedded webview or webview.
  • Facebook uses the term, embedded browser.
  • With my knowledge, I have used the term, in-app browser for tiktok/facebook/instagram's custom browser.

I have looked up and it seems like these 3 terms:

  • In App browser
  • Web View
  • Embedded browser

refer to the same thing.

Is there any difference between the 3 terms? or Is it just 3 different words for the same thing.

Sophisticate answered 20/10, 2021 at 9:2 Comment(0)
W
6

WebView is an embeddable browser that a native application can use to display web content.

Here, the native application can be an IOS mobile app built with swift, a Android app built with Java or Kotlin, a Windows desktop app built with C++ etc. Essentially its an application that is written in the language and framework that is optimized for the particular platform that is being used.

So, a WebView is sort of like an iframe that you can embed in your native application.

One could think of In-App Browsers or Embedded browsers as a use case of WebViews -A common place example of this is a feature that you would see in social media apps like facebook, twitter etc where in whenever there is a hyperlink, on click on which you would be redirected to a browser within the native app itself, instead of opening the link on full-fledged browser app.

In-App browser

Weeny answered 19/12, 2022 at 19:27 Comment(0)
H
2

Also wondering the same thing - come across it for flutter. Still figuring it out but from what I can tell:

  • InAppBrowser
  • InAppWebView
  • HeadlessInAppWebView

Per plugin website documentation:

"The InAppBrowser class represents a native WebView displayed on top of the Flutter App, so it’s not integrated into the Flutter widget tree."

.. would mean a separate distinct browser presented within the app but not controlled or connected to the code. I'm not sure what the advantages or use-case would be.

"InAppWebView is a Flutter Widget for adding an inline native WebView integrated into the flutter widget tree."

.. would mean it embeds the page from url into the app for interactions, so lots of control from the app, which would seem like the whole point of calling a url from an app.

"HeadlessInAppWebView class represents a WebView in headless mode. It can be used to run a WebView in background without attaching an InAppWebView to the widget tree." (https://inappwebview.dev/docs/in-app-browser/basic-usage/). "It can be used to run a WebView in background without attaching an InAppWebView to the widget tree" (https://morioh.com/p/e3f1d830f85b)

Haematogenesis answered 12/6, 2022 at 10:25 Comment(5)
This isn't so much an answer as it is the start of a discussion (meant for comments not solutions).Lapland
How so? This is a question on theory and definitions. I've provided an answer based on having the same question, researching it for myself, and taking the time to contribute this for others. I've noticed the tendency for members on SO to unnecessarily critique others' contributions. But this site isn't Twitter, and I don't think critiquing the nuances of answer vs discussion provides any real value other than ego-boosting. Someone validly queried for distinction between terms, and I've directly addressed this.Haematogenesis
"a separate distinct browser presented within the app but not controlled or connected to the code. I'm not sure what the advantages or use-case would be." => When you are trying to follow the OAuth 2.0 standard, this is an important difference between InAppBrowser and an embedded webview, according to some people I came across. If you use an embedded webview, the app can access whatever credentials the user is typing to login, whereas the InAppBrowser allows your user to input the credentials without the app being able to access them.Antipus
datatracker.ietf.org/doc/html/draft-wdenniss-oauth-native-apps "OAuth 2.0 authorization requests from native apps should only be made through external user-agents such as the system browser (including via an in-app browser tab)."Antipus
oauth.net/2/native-appsAntipus
I
0

I was wondering the same thing during a meeting where I was working with embedded browsers on desktop applications, the presenter was working with webviews on mobile, headless browsers and I was wondering what's the difference between all these things. I saw that I am not the only one wondering this. It seems like they're interchangeable/semantic.

I know in the Microsoft documentation it calls these 'embedded browsers' and it seems like on MacOS and mobile they're called 'webviews'.

Over here we can see that Microsoft states:

embedded browser control (also known as a webview)

Intrude answered 6/5, 2022 at 17:59 Comment(2)
I wish there was something certain about it somewhere, not a guess. but I do think you are right that they are all interchangeable/semantic. Thank you for the answer.Sophisticate
Yeah I totally agree, would be nice if there was a formal definition instead of 'every' technology/company making up a new term for their use case.Intrude
B
0

I am also looking for the answer of this. Sharing my understanding so far. The mobile apps are built and execute in an ecosystem of mobile like its os and this ecosystem also have browser engines. (We know this, wrote to set context). E.g; iPhone has os is iOS and it has embedded browser engine as Safari. Now when I run the app and from app if I want to show the content of the url (without opening the external browser app, instead inside the app(which we generally do using the WebView widgets/component)) then in the backend it will use the embedded browser. So this brings my understanding of term embedded browser. The browser engine which is available (or used) in native os, this looks to be called as embedded browser.

Now when we use WebView to open the content of any url this will show the content inside the app. And for expression probably it is said that content is shown in in-app browser. Now this in-app browser can be using the embedded browser engine like Safari (headless) or some other browser engine. Hence there is subtle difference of in-app browser, and embedded browser.

And WebView, I think much clear as this is a component/widget/mechanism/function to present the content of url in apps.

Budworth answered 21/1, 2023 at 7:17 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.