WebView: Unterschied zwischen den Versionen
Md 42 (Diskussion | Beiträge) K (Link korrigiert) |
Md 42 (Diskussion | Beiträge) (Zwei Links mit Anker auf Artikel zu "App") |
||
Zeile 9: | Zeile 9: | ||
Seit Android {{Android|5}} kann diese Komponente als {{PlayStore|com.google.android.webview|Android System WebView}} auch ohne ein [[Firmware]]-Update wie eine "normale" App über [[Google_Play|Google Play]] aktualisiert werden.<ref name="androidpolice_webview_lollipop" /><ref>{{Cite web | url = https://infinum.co/the-capsized-eight/the-updateable-webview-on-android-5-lollipop-what-is-it-and-why-should-you-care | title = The Updatable WebView on Android 5.0 Lollipop - what is it and why should you care? | date = 2014-10-21 | accessdate = 2017-05-09 | publisher = Infinum Inc. | author = Ivan Lučin | language = en }}</ref> | Seit Android {{Android|5}} kann diese Komponente als {{PlayStore|com.google.android.webview|Android System WebView}} auch ohne ein [[Firmware]]-Update wie eine "normale" App über [[Google_Play|Google Play]] aktualisiert werden.<ref name="androidpolice_webview_lollipop" /><ref>{{Cite web | url = https://infinum.co/the-capsized-eight/the-updateable-webview-on-android-5-lollipop-what-is-it-and-why-should-you-care | title = The Updatable WebView on Android 5.0 Lollipop - what is it and why should you care? | date = 2014-10-21 | accessdate = 2017-05-09 | publisher = Infinum Inc. | author = Ivan Lučin | language = en }}</ref> | ||
Es gibt auch den Ansatz [[App|Apps]] für Android (und andere mobile Betriebssysteme) als sog. | Es gibt auch den Ansatz [[App|Apps]] für Android (und andere mobile Betriebssysteme) als sog. [[App#Hybride_App|hybride App]] zu realisieren, wobei die eigentliche App mit Web-Technologien (HTML, JavaScript, CSS) implementiert wird. Dieser Web-Content wird dann in eine Container-App gepackt, die die eigentliche App mit dem ''WebView''-Element darstellt. <ref>{{Cite web | url = https://www.smashingmagazine.com/2014/10/providing-a-native-experience-with-web-technologies/ | title = Hybrid Mobile Apps: Providing A Native Experience With Web Technologies | date = 2014-10-21 | accessdate = 2017-05-09 | publisher = Smashing Magazine | author = Patrick Rudolph | language = en}}</ref><ref>{{Cite web | url = https://hosting.1und1.de/digitalguide/websites/web-entwicklung/hybrid-app-das-beste-aus-web-und-native-app/ | title = Hybrid-App: Was unterscheidet sie von anderen App-Formaten? | date = 2016-06-02 | accessdate = 2017-05-09 | publisher = 1&1 }}</ref> | ||
Ein bekanntes Framework für die Erstellung solcher hybrider Apps ist ''Apache Cordova''.<ref>{{Cite web | url = https://cordova.apache.org | title = Apache Cordova (Homepage) | accessdate = 2017-05-09 | publisher = apache.org | language = en | quote = Cordova wraps your HTML/JavaScript app into a native container which can access the device functions of several platforms.}}</ref> | Ein bekanntes Framework für die Erstellung solcher hybrider Apps ist ''Apache Cordova''.<ref>{{Cite web | url = https://cordova.apache.org | title = Apache Cordova (Homepage) | accessdate = 2017-05-09 | publisher = apache.org | language = en | quote = Cordova wraps your HTML/JavaScript app into a native container which can access the device functions of several platforms.}}</ref> | ||
Bei der Programmierung einer nativen Android- | Bei der Programmierung einer [[App#Native_App|nativen Android-App]] mit der Programmiersprache [[Java]] steht die WebView-Komponente als Klasse <code>android.webkit.WebView</code> zur Verfügung.<ref name="webview_api_doc" /><ref>{{Cite web | url = https://developer.android.com/guide/webapps/webview.html | title = Building Web Apps in WebView (API Guide) | accessdate = 2017-05-09 | publisher = Google | language = en }}</ref> | ||
== Einzelnachweise == | == Einzelnachweise == | ||
<references /> | <references /> |
Version vom 9. Mai 2017, 12:51 Uhr
WebView ist eine Komponente von Android zur Darstellung von Web-Inhalten, z.B. HTML-Dateien mit JavaScript und CSS.[1][2] Die anzuzeigenden Web-Inhalte können aus dem Internet geladen werden oder in einer App selbst als lokale Ressource enthalten sein. Als Rendering Engine wird von der WebView-Komponente WebKit verwendet.[3]
Mehrere Web-Browser-Apps für Android verwenden zur Darstellung der Web-Inhalte WebView, z.B. Cliqz[4], Lightning[5] oder Jelly (Browser für LineageOS)[5].(Nicht alle Web-Browser-Apps für Android basieren auf der WebView-Komponente, der Firefox Browser bspw. verwendet seine eigene Rendering-Engine "Gecko".[6])
Da nicht nur einige Browser-Apps sondern auch viele andere Apps die WebView-Komponente z.B. zur Einblendung von Werbe-Bannern verwenden, sind Sicherheitslücken in dieser Komponente besonders problematisch.[7][8][9]
Seit Android 5 "Lollipop" kann diese Komponente als Android System WebView auch ohne ein Firmware-Update wie eine "normale" App über Google Play aktualisiert werden.[1][10]
Es gibt auch den Ansatz Apps für Android (und andere mobile Betriebssysteme) als sog. hybride App zu realisieren, wobei die eigentliche App mit Web-Technologien (HTML, JavaScript, CSS) implementiert wird. Dieser Web-Content wird dann in eine Container-App gepackt, die die eigentliche App mit dem WebView-Element darstellt. [11][12] Ein bekanntes Framework für die Erstellung solcher hybrider Apps ist Apache Cordova.[13]
Bei der Programmierung einer nativen Android-App mit der Programmiersprache Java steht die WebView-Komponente als Klasse android.webkit.WebView
zur Verfügung.[3][14]
Einzelnachweise
- ↑ 1,0 1,1 Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ 3,0 3,1 Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ 5,0 5,1 Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
- ↑ Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.