Website als Android-App
Eine App zeichnet sich dadurch aus, dass Sie direkt von der Oberfläche aus mit einem ansprechenden Logo zu erkennen und zu starten ist. Sie hat dann ein eigenes Menü, eine entsprechende Oberfläche die sich vom System abhebt und läuft eigenständig ohne irgendwelche Abhängigkeiten. Also eigentlich genau so wie eine Webseite, die mal als Favorit auf dem Homescreen einrichtet? Eine App hat aber weitere Vorteile.
Hat man nun eine Webseite, deren Inhalt und Funktionialität man sich gut auch als App vorstellen kann, muss man diese nicht gleich 1:1 als App umsetzen. Vielmehr gibt es da zwei Möglichkeiten:
Die einfachste Lösung ist die Erstellung einer Verknüpfung zu der Webseite - Vorteile sind klar: Minimaler Aufwand. Aber die Nachteile sind ebenfalls deutlich: Läuft nur im Standard-Browser, dort muss die Seite als Lesezeichen hinterlegt sein, Browser-Feeling (Adressleiste, Browser-Menü, etc.), Verknüfungslogo ist einheitlich und nicht das der Webseite.
Ein anderer Weg wäre eine kleine programmierte App, die im wesentlichen nur aus einem WebView besteht. Neben den üblichen Objekten zur Interaktion und Darstellung bei Android wie Buttons, Eingabefeldern und Bildern ist ein WebView ein definierter Bereich zur Anzeige einer Webseite.
Im Groben ist es ganz simpel, aus einem neuen Projekt eine Webseite-App zu erstellen:
1. WebView einfügen
Zuerst wird in der main.xml nur ein WebView eingefügt (in der Palette unter "Composite"). Das reicht, mehr nicht.
2. Code erstellen
Das Projekt besteht anfangs aus nur einer Klasse, der Hauptaktivität die wie das Projekt heißt. In der onCreate-Methode wird nun die WebView angesprochen und mit der gewünschten URL gefüllt:
WebView wv = (WebView) findViewById(R.id.webView1); wv.loadUrl("http://example.org");
3. Icon einfügen
Für ein eigenes App-Symbol sind in den drawable*-Verzeichnisen unter /res/ die Standard-Icons durch eigene zu ersetzen, die hierbei auch eine viel höhere Auflösung haben dürfen als die kleinen Favicons von Webseiten.
4. Rechte einstellen
Ein eigentlich banaler Punkt ist am Ende sehr wichtig: Die App muss das Recht haben das Internet zu benutzen. Klingt trivial, nutzt doch eigentlich jede App das Internet. Aber die gute Rechte-Politik bei Android erfordert trotzdem in der AndroidManifest.xml diese Zeile:
<uses-permission android:name="android.permission.INTERNET" />