Android Applikation zur Information von Patienten am Klinikum Großhadern. Bachelorarbeit. Andreas Maximilian Bachmayer

Größe: px
Ab Seite anzeigen:

Download "Android Applikation zur Information von Patienten am Klinikum Großhadern. Bachelorarbeit. Andreas Maximilian Bachmayer"

Transkript

1 Android Applikation zur Information von Patienten am Klinikum Großhadern Bachelorarbeit von Andreas Maximilian Bachmayer München Hochschule München Fakultät Feinwerk- und Mikrotechnik, Physikalische Technik Studiengang Bachelor Mechatronik/Feinwerktechnik Studienrichtung Medizintechnik Referent: Dr. med. Dipl. Inform. Walter Swoboda Korreferent: Prof. Dipl.-Phys. Armin Giebel Betreuer: Dr. med. Dipl. Inform. Walter Swoboda Tag der Einreichung: 9. Februar 2012 München 2012

2 Andreas M. Bachmayer 2 Android Applikation Inhalt 1. Android Applikation Einleitung und Fragestellung Ziel Material und Methoden Entwicklungsumgebung Details zur Entwicklungsumgebung Erklärung der Verzeichnisstrukturen Views Programmerläuterung Überblick Programmablaufdiagram Quellcodeerläuterung GroßhadernActivity Webview Klinikenliste Öffnen der Webseiten der einzelnen Kliniken Maps Ergbnisse und Diskussion Überblick über die verwendeten Klassen Ausblick und aktueller Entwicklungsstand Verzeichnisse Abblidungsverzeichnis Abkürzungen Quellenverzeichnis Anhang Quell-Code... 25

3 Andreas M. Bachmayer 3 Android Applikation Java Dateien XML-Dateien HTML Seiten Screenshots Applikation... 46

4 Andreas M. Bachmayer 4 Android Applikation 1. Android Applikation 1.1. Einleitung und Fragestellung Die Informationsbeschaffung aus dem Internet gewinnt immer mehr an Bedeutung. Auch die Nutzung des Internets mittels mobiler Endgeräte, wie Handys, Smartphones und Tablets nimmt stetig zu (1). Mit dem seit 2010 begonnenen Ausbau des neuen Mobilfunknetzes der 4. Generation (LTE), das mit enormen Übertragungsraten von bis 150 MBit/s aufwarten kann, wird sich dieser Trend fortsetzen. Mit diesem neuen Standard werden auch datenintensive Anwendung wie z.b. mobiles Fernsehen nutzbar sein. Da natürlich auch Patienten ihre Informationen zunehmend aus dem Internet beziehen, wird es zukünftig unerlässlich sein, Informationen zu einem Klinikum auch für mobile Endgeräte zur Verfügung zu stellen. So sollte es möglich sein, schnell und übersichtlich Informationen darüber zu erlangen, welche Klinik Anlaufstelle für den Patienten ist, ob es für das Krankheitsbild Spezialisten in der Klinik gibt, wie diese zu kontaktieren sind und zu welchen Sprechzeiten. Einen Ansatz hierzu hat beispielsweise das Klinikum Ingolstadt gemacht, welches eine Applikation mit Informationen zum Klinikum für das iphone zur Verfügung stellt. Aus diesen Gegebenheiten entstand die Idee auch für das Uniklinikum München eine solche Applikation zu entwickeln 1.2. Ziel Es soll eine Applikation entwickelt werden, die das Funktionsgerüst für eine später zu veröffentlichende Version bildet. Wichtig ist einfache Änderbarkeit, um die Informationen mit geringem Aufwand auf dem neusten Stand halten zu können. Dies soll erreicht werden, in dem eine webbasierte Applikation entwickelt wird, die die jeweiligen Inhalte direkt aus dem Internet abruft.

5 Andreas M. Bachmayer 5 Material und Methoden 2. Material und Methoden 2.1. Entwicklungsumgebung: Es gibt verschiedene Wege, um Software für die ANDROID Plattform zu entwickeln. Die wohl gebräuchlichste (2) ist die Entwicklungsumgebung ECLIPSE in Kombination mit dem ANDROID SDK. SDK steht für Software Developing Kit und ist eine Zusatz Software, die es ermöglicht, mit ECLIPSE komfortabel ANDROID Anwendungen zu programmieren. Mit der Installation des ANDROID SDK steht in ECLIPSE eine Vielzahl von Programmierschnittstellen zur Verfügung. Dieses API (application programming interface) wird zum großen Teil kostenfrei von GOOGLE zur Verfügung gestellt und bietet die Möglichkeit, Soft- und Hardwareschnittstellen des ANDROID Betriebssystems einzubinden. So gibt es zum Beispiel eine API für GOOGLE-Maps und es ist möglich, mit nur einer Zeile Quellcode die Informationen des GPS Empfänger des Endgerätes für die Applikation zugänglich zu machen. Abbildung 1: Entwicklungsumgebung ECLIPSE

6 Andreas M. Bachmayer 6 Material und Methoden Eine weitere sehr wichtige Funktion des ANDROID SDK ist der Geräte-Emulator. Er ermöglicht es, ein mobiles Endgerät mit allen Funktionen auf dem PC grafisch darzustellen. Dabei kann die Version des Betriebssystems und die Hardware Konfiguration des Gerätes frei eingestellt werden. Somit hat man die Möglichkeit, die neu entwickelte Software auf dem virtuellen Gerät zu installieren und zu testen. Abbildung 2: ANDROID Emulator 2.2. Details zur Entwicklungsumgebung: Die Entwicklungsumgebung ist im Wesentlich in drei Bereiche aufgeteilt. Am linken Rand werden die Projekte aufgelistet, die momentan bearbeitet werden können. Sie werden im Stil eines Verzeichnisbaums angezeigt, wie man ihn aus jedem Dateiexplorer kennt. In der Mitte wird der Quelltext der gerade aufgerufenen Datei angezeigt. Sollte man mehrere Dateien gleichzeitig öffnen, erscheinen über dem Quelltext mehrere Reiter, die mit dem jeweiligen Dateinamen beschriftet sind. Es ist möglich, das mittlere Fenster erneut zu teilen und somit mehrere Dateien gleichzeitig zu betrachten, was den Vergleich von Quellcode wesentlich erleichtert.

7 Andreas M. Bachmayer 7 Material und Methoden Am unteren Rand der Entwicklungsumgebung befindet sich der dritte Bereich, der Statusmeldungen anzeigt. Hier wird z.b. der momentane Status des ANDROID Emulators angezeigt Erklärung der Verzeichnisstrukturen Wenn man ein neues ANDROID Projekt in ECLIPSE anlegt, wird der Standard Verzeichnis Baum für die ANDROID-Anwendung automatisch generiert. Das Verzeichnis auf der höchsten Ebene erhält den Namen des Projekts, es enthält die Datei AndroidManifest.xml. In der Verzeichnis Ebene darunter werden die Ordner src, gen, Google APIs, assets und res erstellt. In ANDROID heißt eine Bildschirmansicht Activity. Wenn eine solche Activity gestartet wird, ändert sich die Benutzeroberfläche auf dem Endgerät. Diese Activities werden vom Programmierer erstellt und können beliebig benannt werden. Alle Activities, die in der Applikation genutzt werden sollen, müssen in der Datei AndroidManifest.xml aufgelistet werden, damit das Betriebssystem weiß, dass sie existieren. Des Weiteren werden in dieser Datei Freigaben auf externe Ressourcen, wie das Internet oder den GPS Empfänger, hinterlegt. Auch der Zugriff auf Bibliotheken wie GOOGLE-Maps wird hier freigegen. Der Name des Ordners src steht für Sources, hier werden alle Java Dateien für die Applikation abgelegt. Da jede Activity eine eigene Klasse darstellt, gibt es hier mindestens so viele Dateien wie Activities in der Applikation genutzt werden. Diese Dateien steuern das Verhalten der Software. Alle Benutzereingaben, die über den Touchscreen oder Tasten des Gerätes getätigt werden, werden hier überwacht und verarbeitet. Die Klassen, die hier genutzt werden, sind meist Unterklassen der Klasse View (siehe 2.3.1), die von den ANDROID APIs zur Verfügung gestellt wird. Jeder View benötigt eine.xml Datei, die sein Layout definiert. Sie befindet sich im Ordner res/layout/. Im Ordner gen befindet sich nur die Datei R.java. Sie wird von der Entwicklungsumgebung automatisch erstellt und aktualisiert. In ihr werden alle von der Applikation

8 Andreas M. Bachmayer 8 Material und Methoden genutzten Variablen hinterlegt und mit einem Hexadezimalcode versehen. Von der manuellen Abänderung wird dringendst abgeraten. GOOGLE APIs enthält alle APIs, die von GOOGLE zur Verfügung gestellt werden. Auch hier bedarf es keines Zutuns des Programmierers, die Entwicklungsumgebung erstellt und füllt diesen Ordner abhängig davon, welche APIs im ANDROID Manifest eingebunden werden. Der Ordner res für Resources beinhaltet die Daten, die von der Applikation zum Betrieb benötigt werden. Er hat die Unterordner drawable-hdpi, drawable-mdpi, drawable-ldpi, layout und values. In den drei drawable Ordnern werden die Grafiken, die die Applikation verwenden soll, hinterlegt. Hdpi steht für high dots per inch, hier werden Grafiken für Geräte mit einer Bildschirmauflösung von 800 x 480 Pixeln und mehr gespeichert. Mdpi steht für medium dots per inch, ldpi für low dots per inch. Die Grafiken im jeweiligen Ordner sollten für eine Bildschirmauflösung von 480 x 320 (mdpi) bzw. 320 x 240 (ldpi) ausgelegt sein. Durch diese drei Ordner lässt sich die Applikation sehr schön für verschiedene Bildschirmauflösungen anpassen, da das jeweilige Endgerät automatisch die passende Grafik lädt. Ein Nachteil der vielen Grafiken ist der Speicher: je mehr Grafiken in verschiedenen Auflösungen hinterlegt werden umso speicherintensiver wird die Applikation, es muss ein geeigneter Mittelweg gesucht werden. Wie in der Erklärung zum Ordner src schon erwähnt, werden im Order Layout.xml Dateien hinterlegt, die das Aussehen eines Views definieren. Diese.xml Dateien werden immer am Anfang der.java Datei, die eine Activity steuert, eingebunden. Hat man also mehrere Activities, die dasselbe Layout bekommen sollen, so kann man die.xml Datei mehrfach einbinden. Ist dies nicht der Fall, muss für jede Activity eine eigene Layout-xml Datei erstellt werden. Im Ordner Values können Konstanten oder Inhalte abgelegt werden. In der Regel werden auch hier.xml Dateien verwendet. Sehr hilfreich ist es, hier Dinge zu definieren, die sich, wenn sie geändert werden in der ganzen Applikation ändern sollen, zum Beispiel die Hintergrundfarben und Schriftgrößen für Texte oder Überschriften.

9 Andreas M. Bachmayer 9 Material und Methoden Views Die wichtigsten Views sind: Webview, Linear Layout, Realtiv Layout, Listview, Mapview, Gridview und Gallery. Das Layout der Views selbst wird als.xml Datei im Ordner Layouts hinterlegt und am Anfang jeder Activity eingebunden. Der WebView ist ein sehr mächtiges Werkzeug, da es dem Programmierer die Möglichkeit bietet, Webinhalte direkt in die Applikation einzubinden. Eigentlich wird hier der Betriebssystem interne Browser aufgerufen, allerdings gibt es die Möglichkeit, Browserelemente, wie Adresszeile und Steuerelemente, auszublenden. Somit kann man dem Anwender bei entsprechender Gestaltung der Webinhalte den Eindruck vermitteln, dass die Inhalte von der Applikation geliefert werden. Tatsächlich ruft die Applikation die Inhalte aber aus dem Internet ab, so dass der Programmierer sehr komfortabel die Möglichkeit hat, die Inhalte zu ändern, ohne dass auf jedem Gerät ein Update der Applikation durchgeführt werden muss. Der Internetzugriff erfolgt hierbei keineswegs ohne Wissen des Anwenders, da er bei Installation der Software automatisch darauf hingewiesen wird, dass die Anwendung Internetzugriff erfordert. Mit dem Linear Layout ist es möglich, Bildschirmelemente direkt hintereinander zu platzieren. Je nach Größe des Objektes und Bildschirmauflösung werden die Objekte dann nebeneinander oder untereinander angezeigt. Das Betriebssystem füllt immer die volle Breite des Bildschirms von links nach rechts aus und springt wieder an den linken Bildschirmrand, sobald das nächste Objekt nicht mehr auf den Bildschirm passt, vergleichbar mit Text in einem Textverarbeitungsprogramm, das auf linksbündig eingestellt ist. Das Relative Layout ist die leistungsstärkere Version des Linear Layouts. Hier wird die Position der Elemente auf dem Bildschirm und deren Größe nicht in absoluten Zahlen angegeben, sondern in prozentualen Anteilen der Bildschirmnutzung und relativ zu den anderen Objekten auf der Oberfläche. Man kann z.b. angeben: Grafik 1 befindet sich links oben auf dem Bildschirm, belegt 30% der Breite und 10% der Höhe des Bildschirms. Grafik 2 befindet sich rechts von Grafik 1 und belegt den Rest der zur Verfügung stehenden Bildschirmbreite. Man kann auch auf die Angaben der Prozentzahlen verzichten und den Objekten ein Gewicht zuweisen. Wenn Grafik 1 z.b. das Gewicht 2 und Grafik 2 das Gewicht 1 bekommt, würde Grafik 1 ²/ 3 und

10 Andreas M. Bachmayer 10 Material und Methoden Grafik 2 1 / 3 des Bildschirmes füllen. Durch die automatische Skalierung der Objekte durch das Betriebssystem, wird die Anwendung auch auf Geräten mit verschieden Bildschirmauflösungen immer richtig angezeigt, was beim Linear Layout nicht immer zu erreichen ist. Der Listview generiert eine scrollbare Liste auf dem Bildschirm. Die einzelnen Positionen der Liste werden aus einem String-Array, das in der zugehörigen.xml- Layoutdatei abgelegt ist, bezogen. Das String Array kann auch dynamisch erzeugt werden. Dies wird z.b. beim Anzeigen einer Liste von Kontakten genutzt. Hier wird eine Anfrage an das Betriebssystem gestellt. Das Betriebssystem erstellt dann automatisch das String Array aus den auf dem Telefon hinterlegten Kontakten, so dass der ListView in der Lage ist, diese anzuzeigen. Auch in Formularen, wo z.b. ein Ländername für die Adressangabe ausgewählt werden muss, wird der ListView häufig verwendet. Der Mapview ist die wohl am häufigsten genutzte GOOGLE API. Sie bindet den Kartendienst GOOGLE Maps in die Applikation ein. Den Umfang, in dem die Karten genutzt werden können, bestimmt hierbei der Programmierer. Die Standard Ansicht ist ein verschiebbarer Kartenausschnitt auf einem festgelegten Zoomlevel. Relativ einfach können die Zoomfunktion und eine Startposition über Längen und Breitegrade implementiert werden. Mit etwas mehr Programmieraufwand kann die Karte mit Schichten überlagert werden, auf denen z.b. Symbole angezeigt werden. Zum Beispiel könnte hier ein Firmenlogo an den verschiedenen Standorten der Firma eingeblendet werden. Die Positionierung der Logos erfolgt ebenfalls mittels Längen- und Breitengeraden, die wiederum von einem Array zur Verfügung gestellt werden können. Auch die Programmierung eines eigenen Navigationssystems wird durch die Überlagerung mit einer Schicht bewerkstelligt. Auf den Algorithmus zum Suchen der Route kann hierbei als API zugegriffen werden, es handelt sich also lediglich um die grafische Gestaltung des Navigationssystems. Der Gridview bietet die Möglichkeit, mehrere Objekte in einem Gitter anzuordnen; dabei können die Anzahl der Zeilen und Spalten angegeben werden. Die Größe der Objekte wird hierbei abhängig von Spalten- und Zeilenzahl verändert.

11 Andreas M. Bachmayer 11 Programmerläuterung Galerie ist eine Ansicht, die das gleiche Design wie das vom Betriebssystem zur Verfügung gestellte Programm zum Verwalten und Betrachten von Bildern aufweist. Sie ermöglicht dem Anwender, komfortabel Bilder zu betrachten. 3. Programmerläuterung 3.1. Überblick Das Programm wird mit GrosshadernActivity gestartet. Sie bildet die Startseite der Applikation. Von hier aus werden die Untermenüs der Applikation aufgerufen. Es gibt die Möglichkeiten, Kliniken aufzurufen, dadurch wird die Activity Kliniken_liste.java gestartet. Wird eine Klinik aus der Liste ausgewählt, wird Webview.java gestartet. Der Webview bekommt eine Webseite und einen Parameter mit dem Namen der Klinik übergeben. Notfälle und Kontakt startet ebenfalls Webview.java, mit je einer anderen Webadresse. Der Weg zu uns startet Maps.java, was GOOGLE-Maps mit den GPS-Koordinaten des Klinikum Großhaderns anzeigt. Der letzte wählbare Punkt ist Impressionen, was ImpressWebView.java startet und eine Webseite mit Bildern des Klinikums anzeigt.

12 Andreas M. Bachmayer 12 Programmerläuterung 3.2. Programmablaufdiagram Programmstart Kliniken Notfälle Kontakt (Pforte) Der Weg zu uns Impressionen öffnet öffnet öffnet öffnet öffnet Klinik 1,2 n Text / HTML Text / HTML Text / HTML Text / HTML öffnet Text / HTML Für ANDROID Geräte: Zurück -Taste / nach rechts wischen öffnet klick auf dem Touchscreen 12

13 Andreas M. Bachmayer 13 Programmerläuterung 3.3. Quellcodeerläuterung GroßhadernActivity GroßhadernActivity ist die übergeordnete Java Datei, von der aus die nächsten Activities aufgerufen werden. Im Folgenden werden die einzelnen Schritte, die der Quellcode bewirkt erklärt. import android.app.activity; import android.os.bundle; import android.view.view; import android.content.intent; Mit dem import Befehl werden Bibliotheken eingebunden, die Standard Funktionen zur Verfügung stellen. Z.B. könnte hier eine Quadratwurzelfunktion aus einer Bibliothek verwendet werden, anstatt diese Funktion selbst zu schreiben. publicclass GrosshadernActivity extends Activity Diese Zeile erstellt die Klasse GrosshadernActivity, die die Klasse Activity erweitert. Darauf folgen geschweifte Klammern, in denen der eigentlich Programmcode dieser Datei geschrieben publicvoid oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main); Befehl Bewirkt, dass evtl. existierende Funktionen, die denselben Namen haben, von der aktuellen Funktion überschrieben werden. Die Funktion bekommt ein Bundle mit Namen savedinstancestate übergeben. SetContentView lädt aus dem Layout Verzeichnis die entsprechende xml-datei, in diesem Fall main.xml. 13

14 Andreas M. Bachmayer 14 Programmerläuterung Um den weiteren Aufbau des Programms verstehen zu können, muss man zunächst einen Blick auf die main.xml Datei werfen. Beispielhaft wird hier der Teil von main.xml gezeigt, der für die Darstellung des Kliniken-Buttons zuständig ist. Der Einfachheit halber werden die Funktionen direkt hinter der Code Zeile in grün erklärt.... <! Kliniken > <LinearLayout android:orientation="horizontal" //Bildschirmorientierung horizontal android:layout_width="match_parent" //Bildschirmbreite wird voll ausgenutzt android:layout_height="wrap_content"> //Bildschirmhöhe inhaltsangepasst <TextView //Name des Objekts ist klinik android:text="kliniken" //Angezeigter Text = Kliniken android:gravity="center_horizontal" //Ausrichtung = Zentriert //Textgröße in Variable Text_size_linear //Textfarbe in Variable linear_layout_text_color android:layout_width="match_parent" //Volle Bildschirmbreite wird genutzt android:layout_height="wrap_content" //Höhe wird an Inhalt angepasst android:onclick="click_handler" //beim Klicken Funktion click_handler aufrufen android:clickable="true" //Objekt ist anklickbar android:layout_weight="50"/> //Objekt hat das relative Gewicht 50 </LinearLayout> 14

15 Andreas M. Bachmayer 15 Programmerläuterung Wird nun einer der Schalter auf der Startseite über den Touchscreen ausgelöst, wird die Funktion click_handler aufgerufen und an sie eine View Variable gesendet mit dem Inhalt, der in der Layout Datei unter android:id festgelegt wurde. Anschließend durchläuft diese Variable eine switch/case Struktur, in der sich der Fortlauf des Programms entscheidet. publicvoid click_handler(view view) Hier sollen nur die ersten beiden cases kurz erläutert werden.... switch (view.getid()) // ListederKlinikenaufrufen case R.id.kliniken: Intent kliniken = new Intent (this, Kliniken_liste.class); startactivity (kliniken); break;... // WebseitefürNotfaelleaufrufen case R.id.notfaelle: Intent notfaelle = new Intent (this, Webview.class); string webadress = new String ("http://www.drbachmayer.de/test/notfall.html?notfall"); notfaelle.putextra("web", webadress); startactivity (notfaelle); break; Die Switch Funktion ermittelt über view.getid(), welcher der Schalter betätigt wurde, und führt dem entsprechend die Funktionen aus. Im Fall kliniken wird nur ein neuer Intent mit Namen kliniken erstellt und gestartet. Damit wird in die Activity Kliniken_liste gewechselt. Wenn notfaelle übergeben wird, wird sowohl der Intent notfaelle erstellt, als auch ein String webadress, der die zu öffnende Webadresse beinhaltet. Da man beim Starten einer Activity nicht direkt einen Parameter übergeben kann, hier wäre dass die Webadresse, bedient man sich der Funktion putextra. Hier wird an den Intent noch die Variable webadress angehängt. 15

16 Andreas M. Bachmayer 16 Programmerläuterung Webview Mit der 1. Zeile wird wieder die Klasse erzeugt. Die Webview Klasse erweitert ebenfalls die Klasse Activity. publicclass Webview extends Activity Als nächstes wird ein Webview mit dem Name mwebview erstellt, der im weiteren Programmverlauf konfiguriert werden kann. Die oncreate Funktion sorgt wie in jeder.java Datei für den Aufruf des für diese Activity festgelegten Layout File, hier die webview.xml. //Einen Webview erstellen WebView publicvoid oncreate(bundle savedinstancestate) // wird immer aufgerufen, wenn die Activity gestartet wird super.oncreate(savedinstancestate); setcontentview(r.layout.webview); Nun wird zunächst ein Bundle mit dem Namen webadr erstellt. Diese Variable dient als Zwischenspeicher für alles, was dem Intent zum Start der Activity mitgegeben wurde. Über getintent().getextras(), werden alle übergebenen Extras im Bundel webadr abgelegt. Da in der Datei GrosshadernActivity.java im Befehl.putExtra der Variablen webadress der Zugriffsname web zugewiesen wurde, kann nun über webadr.getstring( web ) auf diese Variable im Bundle webadr zugegriffen werden. Die übergebene Webadresse wird in der Variable webadress vom Typ String abgelegt. //aus dem Bundle die als Extras übergebene Webadresse herausziehen Bundle webadr = getintent().getextras(); String webadress = newstring(webadr.getstring("web")); Nun kommt die kommt die Konfiguration des Webviews. Die Layoutdatei ist denkbar einfach, sie legt lediglich fest, dass der Webview den kompletten Bildschirm ausfüllen soll. Über den Befehl getsettings().setjavascriptenabled(true) wird Javascript im Webview zugelassen und loadurl gibt die Webseite an, die im Webview zu öffnen ist. 16

17 Andreas M. Bachmayer 17 Programmerläuterung //den Webview aufbauen mwebview = (WebView) findviewbyid(r.id.webview); mwebview.getsettings().setjavascriptenabled(true); mwebview.loadurl(webadress); //Methode zur Browsersteuerung aufrufen mwebview.setwebviewclient(new MyWebViewClient()); Die letzte Zeile im Konfigurationsteil für den Webview ruft eine Funktion auf, die verhindert, dass die aufgerufene Webseite vom Betriebssystem als solche erkannt wird und damit die Frage gestellt wird, ob sie im Standardbrowser geöffnet werden soll. //verhindern, dass die Webseiten im Standardbrowser geöffnet werden privateclass MyWebViewClient extends publicboolean shouldoverrideurlloading(webview view, String url) view.loadurl(url); returntrue; Als letzter Schritt in dieser Datei wird die Zurück-Taste des Endgerätes eingebunden, die es ermöglicht eine Webseite zurückzuspringen, falls mehrere Webseiten hintereinander geöffnet wurden. //Die Zurück Taste einbinden, falls es einen Webseitenverlauf publicboolean onkeydown(int keycode, KeyEvent event) if ((keycode == KeyEvent.KEYCODE_BACK) &&mwebview.cangoback()) mwebview.goback(); returntrue; returnsuper.onkeydown(keycode, event); (4) Kliniken_liste Mit dieser Datei wird aus einem String-Array eine Liste erzeugt. Beim Anklicken eines Elements in der Liste wird dessen Namen ermittelt und eine Webseite geöffnet. Der Name des Listenelements wird der Webseite als Parameter übergeben. 17

18 Andreas M. Bachmayer 18 Programmerläuterung Zunächst wird die Klasse erstellt und anschließend der oncreate Befehl vorbereitet. publicclass Kliniken_liste extends ListActivity // wird immer aufgerufen, wenn die Activity gestartet wird publicvoid oncreate(bundle list) super.oncreate(list); Eine kleine Besonderheit bei der Liste ist, dass die Elemente, die in der Liste erscheinen sollen, zunächst aus dem Ordner res und dort speziell aus einem String- Array geladen werden müssen. Da es sehr einfach möglich ist, das String-Array um weitere Elemente zu ergänzen, kann die Liste sehr komfortabel geändert werden. Beim Laden der Daten wird ein neues Array erstellt mit dem Namen kliniken_all, nicht zu verwechseln mit dem String-Array im res Ordner. Es ist in blau geschrieben und hat denselben Namen, ist aber nicht dasselbe Array. Anschließend wird mit den Daten aus dem neu erzeugten String-Array mittels eines vom Betriebssystem zur Verfügung gestellten Adapters die Liste erstellt und mit Inhalten gefüllt. //String Array aus den Ressourcen laden Resources res = getresources(); String[] kliniken_all = res.getstringarray(r.array.kliniken_all); //den ausgelesenen String auf die Liste anwenden this.setlistadapter(new ArrayAdapter<String>(this, R.layout.kliniken_list, R.id.label, kliniken_all)); Am Ende der Datei wird die Benutzereingabe verarbeitet. Die Funktion onlistitemclick aus der übergeordneten Klasse wird modifiziert, sie bekommt einen List- View, einen View, einen Integer und einen Long übergeben. Es wird ein Object o erstellt, in dem über den Listenadapter die Position des angeklickten Elements abgelegt wird. Im nächsten Schritt wird diese Position mit o.tosring() in einen String umgewandelt, der den Namen des geklickten Elements enthält und in der Variablen keyword ablegt wird. Im String webadress werden dann die statische Webadresse und die Variable keyword miteinander zu einer durch ein? getrennten ULR verschmolzen. Im letzten Schritt wird der Webview gestartet und die URL, wie schon in GroßhadernActivity erklärt, über.putextra übergeben. 18

19 Andreas M. Bachmayer 19 protectedvoid onlistitemclick(listview l, View v, int position, long id) super.onlistitemclick(l, v, position, id); // Die angeklickteklinkikherausziehen Object o = this.getlistadapter().getitem(position); String keyword = o.tostring(); String webadress = new String ("http://www.dr bachmayer.de/test /klinik.htm?"+ keyword); Intent oncreate = new Intent (this, Webview.class); oncreate.putextra("web", webadress); startactivity (oncreate); Öffnen der Webseiten der einzelnen Kliniken Die Webseite der einzelnen Kliniken ist auf einem Server hinterlegt und wird im Moment des Aufrufs durch den Benutzer durch ein Javascript erstellt. Das Javascript ist in eine HTML-Seite eingebettet und greift auf eine xml-datei zu, die die Informationen zu allen Kliniken enthält. Anhand des übergebenen Kliniknamens sucht das Javascript in der xml-datei den passenden Datensatz und erstellt die HTML Seite danach. Auf diese Weise haben die Webseiten alle das gleiche Layout, aber die enthaltenen Informationen wie Telefonnummern oder Adressen ändern sich. Zunächst wird getestet ob nach dem? etwas steht, ist dies der Fall, wird der Inhalt in der Variablen tmp abgelegt und dann mit tmp.slice(1) die erste Stelle des Strings, das?, weggeschnitten. Wird kein Parameter übergeben wird eine Fehlermeldung ausgegeben. if (location.search!= "") var tmp=(location.search); var clinic=(tmp.slice(1)); else alert ("Fehler bei der Parameterübergabe"); Als nächstes wird die xml-datei geöffnet, das Anzeigen im Browser aber unterdrückt. xmlhttp.open("get","http://www.dr bachmayer.de/test/inhalt_kliniken.xml",false); 19

20 Andreas M. Bachmayer 20 Programmerläuterung Alle folgenden document.write Befehle schreiben reinen HTML Code, der eine Tabelle darstellt, die mit den Inhalten aus der xml-datei gefüllt wird. Das Füllen der Tabelle funktioniert über die Variable x. In der Variable x werden alle Informationen über die gewünschte Klinik abgelegt. Dies geschieht über xml- Doc.getElementsByTagName(clinic). Clinic ist die an das Javascript übergebene Variable, die den Namen der Klinik enthält, somit ist es der möglich, die betreffende Klinik herauszufiltern. Mit der darauf folgen for-schleife wird die Variable x solange durchlaufen, bis das Ende erreicht ist. Dadurch, dass der Zähler i dabei immer um eins erhöht wird, ist das, was zurückgeliefert wird immer etwas anderes. Man kann also sagen, dass die xml-datei Zeile für Zeile überprüft wird, ob dort die gewünscht Information vorhanden ist. Mit dem letzten Befehl wird die HTML-Tabelle geschlossen. document.write("<table width='100%' border='0'>"); var x=xmldoc.getelementsbytagname(clinic); for (i=0;i<x.length;i++) document.write("<tr><td colspan='2' align='center'><strong>"); document.write(x[i].getelementsbytagname("name")[0].childnodes[0].nodevalue); document.write("</strong></td></tr><tr><td colspan='2' align='center'>director:"); document.write("</td><tr><td colspan='2' align='center'><p><img src='"); document.write(x[i].getelementsbytagname("picture")[0].childnodes[0].nodevalue); document.write("</table>"); Die Struktur der xml-datei kann im Anhang eingesehen werden Maps In der Datei Maps.java wird das Verhalten der Kartenansicht definiert. Zunächst wird die Klasse erstellt, die eine Unterklasse von MapActivity ist. Als nächstes wird eine Funktion zum Kontrollieren der Activity erstellt, die hier zusätzlich festlegt, dass eine Route auf der Karte angezeigt werden kann, weitere Möglichkeiten der Funktion mapcontroller kommen aus Bibliotheken. 20

21 Andreas M. Bachmayer 21 Programmerläuterung publicclass Maps extends MapActivity private MapController protectedboolean isroutedisplayed() returntrue; In der oncreate Funtion wird zunächst die xml-datei für das Layout der Karte eingebunden. Diese Layoutdatei beinhaltet im Wesentlichen die Lizenz von GOOGLE, die es ermöglicht, das Kartenmaterial aus dem Internet abzurufen. Die restlichen Einstellungen für die Karte werden in der Java-Datei selbst definiert bzw. sind von der MapView API vorgegeben. Am Ende der Datei wird noch ein GeoPoint definiert, das sind hier die GPS Koordinaten des Klinikums Großhadern in Micrograd. Mit.animateTo(), wird die Startposition der Karte auf diesen GeoPoint festgelegt. Der letzte Befehl.setZoom() legt fest, in welcher Höhe über dem Erdboden die Kartenansicht gestartet publicvoid oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.maps); // MapViewstarten MapView mapview = (MapView) findviewbyid(r.id.mapview); mapview.setbuiltinzoomcontrols(true); //Mapcontrollereinstellen mapcontroller = mapview.getcontroller(); GeoPoint point = newgeopoint( , ); mapcontroller.animateto(point); mapcontroller.setzoom(16); 21

Android GUI Entwicklung

Android GUI Entwicklung Android GUI Entwicklung Aktuelle Technologien verteilter Java Anwendungen Referent: Stefan Haupt Hello World! Agenda Einführung & Motivation Android Applikationen UI-Komponenten Events Ressourcen Kommunikation

Mehr

Tutorial. Programmierung einer Android-Applikation. Teil 1

Tutorial. Programmierung einer Android-Applikation. Teil 1 Tutorial Programmierung einer Android-Applikation Teil 1 Autor: Oliver Matle Datum: März 2014, Version 1.0 Autor: Oliver Matle, www.matletarium.de Seite 1 von 28 Inhaltsverzeichnis Kapitel 1 Einleitung...3

Mehr

Mobile Systeme Android 07.04.2011

Mobile Systeme Android 07.04.2011 Mobile Systeme Android 07.04.2011 Android Plattform/Betriebssystem für mobile Endgeräte wie z.b. Smartphones Basiert auf dem Linux Kernel Bis auf grundlegende Prozesse werden alle Anwenden mithilfe einer

Mehr

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Organisatorisches Anmelden im Web: ZIV Lehre Anmelden Anwesenheitsliste Anwesenheitsschein bei 75% Anwesenheit Allgemeine

Mehr

Android. 2 24.09.2013 Mobile Systeme - Android

Android. 2 24.09.2013 Mobile Systeme - Android Android 24.09.2013 Android Plattform/Betriebssystem für mobile Endgeräte wie z.b. Smartphones Basiert auf dem Linux Kernel Bis auf grundlegende Prozesse werden alle Anwenden mithilfe einer speziellen JVM

Mehr

App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A

App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A App Entwicklung für Android F O R T G E S C H R I T T E N E P R O G R A M M I E R U N G I N J A V A D O Z E N T : R E F E R E N T : P R O F. D R. K L I N K E R R I C O L O S C H W I T Z Aufbau der Präsentation

Mehr

2. GUI-Programmierung für mobile Geräte

2. GUI-Programmierung für mobile Geräte 2. GUI-Programmierung für mobile Geräte Lernziele 2. GUI-Programmierung für mobile Geräte Themen/Lernziele: Einführung Lebenszyklus einer Android-Anwendung Beispiele GUI-Elemente Einbindung externer Ressourcen

Mehr

Einführung in Android. 9. Dezember 2014

Einführung in Android. 9. Dezember 2014 Einführung in Android 9. Dezember 2014 Was ist Android? Software für mobile Geräte: Betriebssystem Middleware Kernanwendungen Android SDK: Tools und APIs zur Entwicklung von Anwendungen auf der Android-Plattform

Mehr

SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS2013 - HSRM

SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS2013 - HSRM SEMINARVORTRAG ANDROID ENTWICKLUNG ETIENNE KÖRNER EMBEDDED SYSTEMS SS2013 - HSRM ÜBERSICHT Android Android Dalvik Virtuelle Maschine Android und Desktop Applikationen Android Entwicklung Tools R Activity

Mehr

Einführung in Android

Einführung in Android Einführung in Android FH Gießen Friedberg 12. Oktober 2010 Inhalt Historie / Prognosen / Trends Grundlagen Entwicklungsumgebung Standardbeispiel Erweitertes Beispiel Übung / Quellen 2 Grundlagen - Historie

Mehr

1 Der Einstieg in Java für Android

1 Der Einstieg in Java für Android 1 1 Der Einstieg in Java für Android Diese Ergänzung zum Buch Programmieren in Java will Ihnen dabei helfen, erste Programme für Smartphones der Android Plattform von Google zu erstellen und diese Programme

Mehr

CloudMatic V1.0. Inhalt

CloudMatic V1.0. Inhalt CloudMatic V1.0 Inhalt Einleitung... 2 CCUs hinzufügen... 3 meine-homematic.de... 4 Eigenes VPN... 4 View Editor... 5 Übersicht... 5 Allgemeine Einstellungen... 6 Kanäle hinzufügen... 6 Spezielle Kanäle...

Mehr

Entwickeln für Android OS

Entwickeln für Android OS Entwickeln für Android OS Am Beispiel der WAPLA Wissenschaftliche Arbeitstechniken und Präsentation Lern Applikation Christian Kain Kevin Kain Wolfgang Kremser Gregor Bankhamer Warum Android? Verbreitung

Mehr

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler

Programmieren für mobile Endgeräte SS 2013/2014. Dozenten: Patrick Förster, Michael Hasseler Programmieren für mobile Endgeräte SS 2013/2014 Programmieren für mobile Endgeräte 2 Besprechung der Aufgaben 1) Legen Sie das Android-Projekt HelloWorldApp an so wie es in den vorherigen Folien beschrieben

Mehr

Seminar Multimediale Werkzeuge Sommersemester 2011

Seminar Multimediale Werkzeuge Sommersemester 2011 Seminar Multimediale Werkzeuge Sommersemester 2011 Dipl.-Ing. Marco Niehaus marco.niehaus@tu-ilmenau.de 09.06.2011 Page 1 Android Development - Installation Java SDK wird benötigt (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Übungen zur Android Entwicklung

Übungen zur Android Entwicklung Übungen zur Android Entwicklung Aufgabe 1 Hello World Entwickeln Sie eine Hello World Android Applikation und laden diese auf den Emulator. Leiten Sie hierfür die Klasse android.app.activity ab und entwerfen

Mehr

Mobile App Development. - Grafische Oberflächen 2 -

Mobile App Development. - Grafische Oberflächen 2 - Mobile App Development - Grafische Oberflächen 2 - Inhalt Dimensionen Layouting Menüs Activities starten Übung Dimensionen Dimensionen Analog zu Strings und Farben können Dimensionen definiert werden Dimensionen

Mehr

APPS FÜR ANDROID ENTWICKELN

APPS FÜR ANDROID ENTWICKELN jan TITTEL jochen BAUMANN ELL N H C S IEG T S N I E APPS FÜR ANDROID ENTWICKELN AM BEISPIEL EINER REALEN APP Inhalt 1 Einführung.............................................. 1 1.1 Die Android-Plattform.................................................

Mehr

Apps-Entwicklung mit Netbeans

Apps-Entwicklung mit Netbeans JDroid mit Netbeans Seite 1 Apps-Entwicklung mit Netbeans Version 2.2, 30. April 2013 Vorbereitungen: 1. JDK SE neuste Version installieren, (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Matthias Furtmüller, Stefan Haselböck. Android

Matthias Furtmüller, Stefan Haselböck. Android Matthias Furtmüller, Stefan Haselböck Android Grundlagen, Entwicklungsumgebung, wichtige Konzepte und Bibliotheken, Unit Testing unter Android, Simulator, Deployment Inhaltsverzeichnis 1 Entwicklungsumgebung,

Mehr

Java - Programmierung für Android. Leibniz Universität IT Services Anja Aue

Java - Programmierung für Android. Leibniz Universität IT Services Anja Aue Java - Programmierung für Android Leibniz Universität IT Services Anja Aue Bücher Dirk Luis / Peter Müller: Android Thomas Künneth: Android 5: Apps entwickeln mit Android Studio Dawn Griffiths, David Griffiths:

Mehr

RÖK Typo3 Dokumentation

RÖK Typo3 Dokumentation 2012 RÖK Typo3 Dokumentation Redakteur Sparten Eine Hilfe für den Einstieg in Typo3. Innpuls Werbeagentur GmbH 01.01.2012 2 RÖK Typo3 Dokumentation Inhalt 1) Was ist Typo3... 3 2) Typo3 aufrufen und Anmelden...

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel XDK

Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung in die Cross-Plattform Entwicklung Das Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK vertraut. Es wird Schritt für Schritt die erste eigene Hybrid-App entwickelt

Mehr

Mobile Application Development

Mobile Application Development Mobile Application Development Android: Einführung Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Lernziele Der/die Kursbesucher/in kann

Mehr

Apps-Entwicklung mit Eclipse

Apps-Entwicklung mit Eclipse JDroid mit Eclipse Seite 1 Apps-Entwicklung mit Eclipse Version 1.1, 30. April 2013 Vorbereitungen: 1. JDK installieren JDK SE neuste Version (64 oder 32 Bit) herunterladen und installieren (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

JDroidLib mit Eclipse (Mac/Linux/Windows)

JDroidLib mit Eclipse (Mac/Linux/Windows) JDroidLib mit Eclipse (Mac/Linux/Windows) Version 1.3, 25. März 2013 (Unter Windows besser die ADT-Bundle Version installieren, siehe entsprechende Anleitung) Vorbereitungen: 1. JDK SE neuste Version installieren,

Mehr

Internetauftritt: Hochschulpartnerschaften - Datenbank

Internetauftritt: Hochschulpartnerschaften - Datenbank Hochschule für Technik, Wirtschaft und Kultur Leipzig (FH) University of Applied Sciences Internetauftritt: Hochschulpartnerschaften - Datenbank Modul: Anleitung für Typo3 bzgl. Partnerhochschulen einpflegen

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Erste Schritte in NVU

Erste Schritte in NVU NVU (http://www.nvu-composer.de/) ist ein leicht zu bedienender HTML-Editor. Nach dem Start von NVU sieht der Bildschirm wie folgt aus: Lasse dich von dieser Anzeige nicht irritieren, es ist alles halb

Mehr

Wiederholung float+clear. Grundlagen Webgestaltung Seite 136

Wiederholung float+clear. Grundlagen Webgestaltung Seite 136 Wiederholung float+clear Grundlagen Webgestaltung Seite 136 float und clear clear kann für mehrspaltige Layouts verwenden werden. Jedoch kann das auch zu ungewollten Effekten führen. Angenommen eine Webseite

Mehr

Informatik Sommercamp 2012

Informatik Sommercamp 2012 Informatik Sommercamp 2012 App Entwicklung mit dem Android SDK Dominik W., Stefan S., Jan L. Fakultät für Informatik und Mathematik Universität Passau 23.07.2012 Gliederung 1 2 3 4 Warum? an Schule und

Mehr

Bedienungsanleitung GOZ-Handbuch der Landeszahnärztekammer Baden-Württemberg

Bedienungsanleitung GOZ-Handbuch der Landeszahnärztekammer Baden-Württemberg Bedienungsanleitung GOZ-Handbuch der Landeszahnärztekammer Baden-Württemberg LZK BW 12/2009 Bedienungsanleitung GOZ-Handbuch Seite 1 Lieferumfang Zum Lieferumfang gehören: Eine CD-Rom GOZ-Handbuch Diese

Mehr

7 Plugins einbinden. 7.1 Beispiel»Die Taschenlampe«

7 Plugins einbinden. 7.1 Beispiel»Die Taschenlampe« 201 PhoneGap bringt einen standardisierten Hardwarezugriff für Smartphones mit. Aber was passiert, wenn Sie mehr wollen: Wenn Sie eine Hardware per Bluetooth ansprechen wollen oder Features der jeweiligen

Mehr

Multivariate Tests mit Google Analytics

Multivariate Tests mit Google Analytics Table of Contents 1. Einleitung 2. Ziele festlegen 3. Einrichtung eines Multivariate Tests in Google Analytics 4. Das JavaScript 5. Die Auswertung der Ergebnisse Multivariate Tests mit Google Analytics

Mehr

Dokumentation zum Projekt Mail-Adapter in SAP PI. 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696

Dokumentation zum Projekt Mail-Adapter in SAP PI. 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696 Dokumentation zum Projekt Mail-Adapter in SAP PI 17.01.2011 Sinkwitz, Sven 519707 Theel, Thomas 519696 Inhalt 1. Einleitung... 2 2. Vorgehen... 3 1. Datentyp für die Mail einrichten... 3 2. Message Typen

Mehr

Apps Programmierung von Android-Smartphones

Apps Programmierung von Android-Smartphones Apps Programmierung von Android-Smartphones 2/34 Android-Apps Gliederung: Warum? / Warum Android? Grundlagen Beispiel (sehr kurz) weitere Möglichkeiten Einsatz im Unterricht Diskussion / Fragen 3/34 Smartphone-Programmierung

Mehr

VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer. Kommunikation I (Internet) Übung 4 PHP

VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer. Kommunikation I (Internet) Übung 4 PHP VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer Kommunikation I (Internet) Übung 4 PHP SS 2004 Inhaltsverzeichnis 1. PHP die serverseitige Programmiersprache...1 1.1. PHP - Bereiche in HTML definieren...1

Mehr

4. Software-Komponenten in Android

4. Software-Komponenten in Android 4. Software-Kompponenten in Android Lernziele 4. Software-Komponenten in Android Themen/Lernziele Intents: Explizite und implizite Intents Intent-Filter Intent-Resolution Sub-Activities Broadcast Intents

Mehr

LEGO-Mindstorms-Roboter im Informatikunterricht 1 - mit Java-

LEGO-Mindstorms-Roboter im Informatikunterricht 1 - mit Java- Eckart Modrow LEGO-Mindstorms-Roboter S. 1 LEGO-Mindstorms-Roboter im Informatikunterricht 1 - mit Java- Benutzung in einer Programmierumgebung Für die LEGO-Roboter stehen unter allen gängigen Betriebssystemen

Mehr

BFV Widgets Kurzdokumentation

BFV Widgets Kurzdokumentation BFV Widgets Kurzdokumentation Mit Hilfe eines BFV-Widgets lassen sich die neuesten Ergebnisse und die aktuellen Tabellen des BFV auf der eigenen nicht kommerziellen Webseite mit wenig Aufwand einbeten.

Mehr

Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK

Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK Einführung in die Cross-Plattform Entwicklung Responsive Webdesign mit dem Intel XDK Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel XDK und dem Responsive Webdesign vertraut. Es wird

Mehr

Modellierung einer Android-App. 2. Mai 2013

Modellierung einer Android-App. 2. Mai 2013 Modellierung einer Android-App 2. Mai 2013 Taentzer Software-Praktikum 2013 42 Überblick Modellierung der wesentlichen Aspekte Welche Anwendungsfälle haben wir? Übersicht durch Anwendungsfalldiagramme

Mehr

Android-Apps ein komplexes Beispiel (Google-Maps und GPS-Daten, Listen, SD-Kartenzugriff, Activities mit Rückgabewerten und Web-Browser/Internet)

Android-Apps ein komplexes Beispiel (Google-Maps und GPS-Daten, Listen, SD-Kartenzugriff, Activities mit Rückgabewerten und Web-Browser/Internet) Android-Apps ein komplexes Beispiel (Google-Maps und GPS-Daten, Listen, SD-Kartenzugriff, Activities mit Rückgabewerten und Web-Browser/Internet) 2/42 Android Apps: ein komplexes Beispiel Gliederung Vorstellung

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel App Framework vom Intel XDK vertraut. Es wird Schritt für Schritt

Mehr

Geschäftsbereich Mobile Services Was ist Android?

Geschäftsbereich Mobile Services Was ist Android? Geschäftsbereich Mobile Services Was ist Android? Hinter Hoben 149 53129 Bonn www.visionera.de Ansprechpartner: Arno Becker arno.becker@visionera.de +49 228 555 1111 +49 160 98965856 Einleitung Android

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

Zeiterfassung-Konnektor Handbuch

Zeiterfassung-Konnektor Handbuch Zeiterfassung-Konnektor Handbuch Inhalt In diesem Handbuch werden Sie den Konnektor kennen sowie verstehen lernen. Es wird beschrieben wie Sie den Konnektor einstellen und wie das System funktioniert,

Mehr

2. Einloggen bei PROJEKTE2GO... 3. 3. Systemanforderungen... 3. 4. Benutzeroberfläche... 3. 5. Funktionen... 6

2. Einloggen bei PROJEKTE2GO... 3. 3. Systemanforderungen... 3. 4. Benutzeroberfläche... 3. 5. Funktionen... 6 PROJEKTE2GO Inhalt 1. Ihr mobiles Projektmanagement für unterwegs... 3 2. Einloggen bei PROJEKTE2GO... 3 3. Systemanforderungen... 3 4. Benutzeroberfläche... 3 5. Funktionen... 6 5.1 Zeiterfassung...6

Mehr

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap Proseminar Objektorientiertes Programmieren mit.net und C# Florian Schulz Institut für Informatik Software & Systems Engineering Einführung Was hat Cross-Plattform

Mehr

Leica DISTO Transfer Wie verbinde ich meinen Leica DISTO mit meinem PC

Leica DISTO Transfer Wie verbinde ich meinen Leica DISTO mit meinem PC Wie verbinde ich meinen Leica DISTO mit meinem PC PC, Labtop 2 Tablet PC, UMPC Installation 1. Bitte laden Sie die aktuellste Version der Leica DISTO Transfer Software auf unserer Homepage herunter: http://ptd.leica-geosystems.com/en/support-downloads_6598.htm?cid=11104

Mehr

Der Editor und seine Funktionen

Der Editor und seine Funktionen Der Editor und seine Funktionen Für die Eingabe und Änderung von Texten steht Ihnen im Pflegemodus ein kleiner WYSIWYG-Editor zur Verfügung. Tinymce 1 ist ein Open Source Javascript-Editor, der mittlerweile

Mehr

Android - Basics. 16.10.2013 Praktikum Enwicklung von Mediensystemen WS13/14

Android - Basics. 16.10.2013 Praktikum Enwicklung von Mediensystemen WS13/14 Android - Basics 1 Heute Was ist Android? Programmieren für Android App-Struktur Activities und Intents App-Design GUI und Layout 2 Android in a nutshell Open-Source (Open Headset Alliance) Basiert auf

Mehr

VB.net Programmierung und Beispielprogramm für GSV

VB.net Programmierung und Beispielprogramm für GSV VB.net Programmierung und Beispielprogramm für GSV Dokumentation Stand vom 26.05.2011 Tel +49 (0)3302 78620 60, Fax +49 (0)3302 78620 69, info@me-systeme.de, www.me-systeme.de 1 Inhaltsverzeichnis Vorwort...2

Mehr

Der Parameter CLOSE bewirkt, dass sich das Sicherungsprogramm am Ende der Sicherung automatisch schliesst

Der Parameter CLOSE bewirkt, dass sich das Sicherungsprogramm am Ende der Sicherung automatisch schliesst 1 Sicherung 1.1 Einleitung Die Applikation WSCAR basiert auf der Datenbank-Engine Firebird 1.5.5 / 2.5.2. Beide Programme sind nur auf der Hauptstation(Server) installiert und dürfen nie deinstalliert

Mehr

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 4: Einführung in JavaScript Stand: 03.11.2014. Übung WS 2014/2015. Benedikt Schumm M.Sc.

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 4: Einführung in JavaScript Stand: 03.11.2014. Übung WS 2014/2015. Benedikt Schumm M.Sc. Übung WS 2014/2015 E-Commerce: IT-Werkzeuge Web-Programmierung Kapitel 4: Stand: 03.11.2014 Benedikt Schumm M.Sc. Lehrstuhl für ABWL und Wirtschaftsinformatik Katholische Universität Eichstätt-Ingolstadt

Mehr

1 Websites mit Frames

1 Websites mit Frames 1 Websites mit Frames Mehrere Seiten in einer einzelnen Seite anzeigen - Was sind Frames und wie funktionieren sie? - Was sind die Vor- und Nachteile von Frames? - Wie erstellt man eine Frames- Webseite?

Mehr

1. Starte die gewünschte Browseranwendung durch Klick auf den Screenshot.

1. Starte die gewünschte Browseranwendung durch Klick auf den Screenshot. Benutzerhinweise zur digitalen Datenaufnahme Mit den von Esri kostenfrei bereitgestellten Anwendungen zur digitalen Datenaufnahme kannst du Daten am Computer oder direkt im Gelände mit mobilen Geräten

Mehr

Microsoft Access 2010 Bilder

Microsoft Access 2010 Bilder Microsoft Access 2010 Bilder Hyperlinks... arbeiten ähnlich wie ein Link in einer Webseite. sind ein Verweis auf eine Datei (access2010\material\beispiel\tabledevelop\automat.accdb). können ein Verweis

Mehr

Mobile App Development. - Einführung -

Mobile App Development. - Einführung - Mobile App Development - Einführung - Inhalt Organisatorisches Vorlesungsinhalt Mobile Geräte Android Architektur App Aufbau Praktikum Organisatorisches 4 SWS, 5 ECTS 2 Vorlesung / 2 Praktikum 10 Wochen

Mehr

Diese Anleitung bezieht sich auf FixFoto, V 3.40. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein.

Diese Anleitung bezieht sich auf FixFoto, V 3.40. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein. Pfade einstellen Stand: Dezember 2012 Diese Anleitung bezieht sich auf FixFoto, V 3.40. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein. Diese Anleitung soll zeigen, wie man Pfad-Favoriten

Mehr

Softwareentwicklungsprozess im Praktikum. 25. April 2013

Softwareentwicklungsprozess im Praktikum. 25. April 2013 Softwareentwicklungsprozess im Praktikum 25. April 2013 Agile Softwareentwicklung Eine agile Methodik stellt die beteiligten Menschen in den Mittelpunkt und versucht die Kommunikation und Zusammenarbeit

Mehr

Mobile Anwendungen mit Qooxdoo Mobile erstellen

Mobile Anwendungen mit Qooxdoo Mobile erstellen Mobile Anwendungen mit Qooxdoo Mobile erstellen Von Thomas Kestler, elevato GmbH 28.11.2012 Einleitung...2 Voraussetzungen für Qooxdoo...2 Rahmenanwendung...3 Anlegen der Qoodoo-Anwendung...3 Stolperdrähte...6

Mehr

2 DAS BETRIEBSSYSTEM. 2.1 Wozu dient das Betriebssystem. 2.2 Die Bildschirmoberfläche (Desktop) Themen in diesem Kapitel: Das Betriebssystem

2 DAS BETRIEBSSYSTEM. 2.1 Wozu dient das Betriebssystem. 2.2 Die Bildschirmoberfläche (Desktop) Themen in diesem Kapitel: Das Betriebssystem 2 DAS BETRIEBSSYSTEM Themen in diesem Kapitel: Das Betriebssystem Die Windows-Oberfläche Elemente eines Fensters 2.1 Wozu dient das Betriebssystem Das Betriebssystem (engl.: operating system, kurz: OS)

Mehr

Spamschutz bei TYPO3. von Bernd Warken bei Fa. Netcos AG

Spamschutz bei TYPO3. von Bernd Warken bei Fa. Netcos AG Spamschutz bei TYPO3 von Bernd Warken bei Fa. Netcos AG Kapitel 0: Einleitung 3 0.1 Vorwort 3 0.2 Lizenz 3 Kapitel 1: Aktivierung und Konfiguration 4 1.1 config.spamprotectemailaddresses 4 1.2 config.spamprotectemailaddresses_atsubst

Mehr

Programmierung einer Windows Store App mit C# und XAML

Programmierung einer Windows Store App mit C# und XAML Neuer Abschnitt 1 Seite 1 Programmierung einer Windows Store App mit C# und XAML Einleitung In diesem Fachbericht der im Rahmen meines 8 Wochen langem Praktikums entstand geht es um die Programmierung

Mehr

1 Ein erstes Beispiel

1 Ein erstes Beispiel 3 1 Ein erstes Beispiel In diesem Abschnitt werden wir ein erstes Android-Programm erstellen. Es dient dem schnellen Einstieg in die Programmierung von Android. Dabei handelt es sich um ein Programm zur

Mehr

Konfigurieren einer Caritas- Startseite für Abteilungen

Konfigurieren einer Caritas- Startseite für Abteilungen Konfigurieren einer Caritas- Startseite für Abteilungen Jürgen Eckert Domplatz 3 96049 Bamberg Tel (09 51) 5 02 2 75 Fax (09 51) 5 02 2 71 Mobil (01 79) 3 22 09 33 E-Mail eckert@erzbistum-bamberg.de Im

Mehr

Einführung in die Einführung in Android Anwendungsentwicklung

Einführung in die Einführung in Android Anwendungsentwicklung Einführung in die Einführung in Android Anwendungsentwicklung FH Gießen Friedberg 27. Oktober 2010 Inhalt Was bisher geschah / Prognosen Grundlagen Entwicklungsumgebung Beispiel: Notensammler Intents und

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe... php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.

Mehr

Frames oder Rahmen im Browserfenster

Frames oder Rahmen im Browserfenster In dieser Ausbildungseinheit zeigen wir Ihnen, wie Frames oder auch Rahmen im Browserfenster erstellt werden. Dabei möchten wir anmerken, dass zu Frames bereits sehr viel Gegensätzliches geschrieben wurde.

Mehr

Outlook Web App 2010. Kurzanleitung. interner OWA-Zugang

Outlook Web App 2010. Kurzanleitung. interner OWA-Zugang interner OWA-Zugang Neu-Isenburg,08.06.2012 Seite 2 von 15 Inhalt 1 Einleitung 3 2 Anmelden bei Outlook Web App 2010 3 3 Benutzeroberfläche 4 3.1 Hilfreiche Tipps 4 4 OWA-Funktionen 6 4.1 neue E-Mail 6

Mehr

Fork Leitfaden. BibApp Android

Fork Leitfaden. BibApp Android Fork Leitfaden BibApp Android letzte Aktualisierung: 24. April 2013 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 2 2 Eclipse Projekt 2 3 Abhängigkeiten 2 4 Konfiguration 3 4.0.1 Paketname...............................

Mehr

Android Einführung Fragments Android Kurs Stufe 2 (Orangegurt)

Android Einführung Fragments Android Kurs Stufe 2 (Orangegurt) Android Kurs Stufe 2 (Orangegurt) Inhaltsverzeichnis 1 Fragments... 2 2 Der Life Cycle eines Fragments... 2 3 Die Supportlibrary oder das Problem mit der Version... 3 4 Aufbau der Layouts... 4 5 OnClickListener...

Mehr

Installationsanleitung für R

Installationsanleitung für R Installationsanleitung für R R ist eine Programmiersprache und Statistiksoftware zur Analyse von Daten und deren graphischer Darstellung. Um in R zu programmieren, ist zunächst die R- Basissoftware zu

Mehr

Einführung Responsive Webdesign

Einführung Responsive Webdesign Einführung Responsive Webdesign Aktuelle Situation Desktop Webseiten Umsetzungen auch heute noch in den meisten Fällen Pixelbasiert JavaScript schafft Dynamik CSS schafft Trennung von Inhalt und Layout

Mehr

Android Context Twitter. Software Engineering Projekt WS 09/10

Android Context Twitter. Software Engineering Projekt WS 09/10 Software Engineering Projekt WS 09/10 Gliederung Motivation Zielsetzung Grundlagen Implementation Komponentenüberblick Komponentenkommunikation Serverkomponenten (ACT) Ergebnisse / Zusammenfassung 2 Motivation

Mehr

Wetter-Tickers (Laufband)

Wetter-Tickers (Laufband) Diese Seite richtet sich an alle Benutzer der Wetterauswertesoftware WSWIN (http://www.pc-wetterstation.de) von Werner Krenn, besonders aber an Neueinsteiger. Auf den folgenden Seiten soll nicht die Arbeit

Mehr

ESB. Open Source ESB: Mule Flightreservation. Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus]

ESB. Open Source ESB: Mule Flightreservation. Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus] ESB Open Source ESB: Mule Flightreservation Res Gilgen Hochschule Luzern [Wählen Sie das Datum aus] Inhalt 1. Open Source ESB: Mule... 2 1.1. Überblick... 2 1.1.1. Das Beispiel Zeigt:... 2 1.2. Installationsanleitung...

Mehr

DocuWare Mobile ProductInfo 1

DocuWare Mobile ProductInfo 1 DocuWare Mobile ProductInfo Dokumenten-Management mobil Mit DocuWare Mobile greifen Sie direkt von Ihrem Smartphone oder Tablet auf ein DocuWare-Archiv zu. Sie können Dokumente laden, auf dem Bildschirm

Mehr

Zugriff auf Daten der Wago 750-841 über eine Webseite

Zugriff auf Daten der Wago 750-841 über eine Webseite Zugriff auf Daten der Wago 750-841 über eine Webseite Inhaltsverzeichnis Einleitung... 3 Auslesen von Variablen... 4 Programm auf der SPS... 4 XML-Datei auf der SPS... 4 PHP-Script zum Auslesen der XML-Datei...

Mehr

5.4 Die Benachrichtigung (Notification)

5.4 Die Benachrichtigung (Notification) 160 Bekannte Probleme Windows Phone Im Emulator wird immer die Connection.UNKNOWN zurückgegeben. ios und Bada Es wird leider nur unterschieden, ob es eine mobile oder WiFi-Verbindung gibt. Der Grad der

Mehr

Hello World in Java. Der Weg zum ersten Java-Programm

Hello World in Java. Der Weg zum ersten Java-Programm Vorwort Hello World in Java Der Weg zum ersten Java-Programm Diese Anleitung wurde unter Windows XP verfasst. Grundsätzlich sollte sie auch unter späteren Windows Versionen wie Windows Vista oder Windows

Mehr

Geldautomaten-App. ÄNDERUNGSDATUM Thu May 31 2012 ERSTELLER Team "UI Konzeption" (Michael Schultes, Andreas Zeitler)

Geldautomaten-App. ÄNDERUNGSDATUM Thu May 31 2012 ERSTELLER Team UI Konzeption (Michael Schultes, Andreas Zeitler) -App ÄNDERUNGSDATUM ERSTELLER DATEINAME geldautomaten-app BESCHREIBUNG Screen-Mockups und Screen-Flow VERSIONSGESCHICHTE Freitag, 11. Mai 2012: erster Version Montag, 28. Mai 2012: finales UI Design und

Mehr

Einstellungen des Windows-Explorers

Einstellungen des Windows-Explorers Einstellungen des Windows-Explorers Die Ordnerstruktur des Explorers Der Explorer ist der Manager für die Verwaltung der Dateien auf dem Computer. Er wird mit Rechtsklick auf Start oder über Start Alle

Mehr

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Nach dem Update auf die Version 1.70 bekommen Sie eine Fehlermeldung,

Mehr

1. Eigenschaften (zurück) 2. Installation (zurück)

1. Eigenschaften (zurück) 2. Installation (zurück) Excel-Anwendung Auftragsverwaltung mit Angebotsberechnung, Angebot, Auftragsbestätigung, Lieferschein und Rechnung, einschließlich Erstellung Arbeitsplan und Arbeitsbegleitpapiere für die Fertigung 1.

Mehr

Kurzanleitung Typo3 Radio MK V1.5 vom 18.07.2014

Kurzanleitung Typo3 Radio MK V1.5 vom 18.07.2014 Kurzanleitung Typo3 V1.5 vom 18.07.2014 Typo3 Version 4.7.14 0 Inhalt Kurzanleitung Typo3 Login. 2 Seite anlegen.. 3 Inhaltselement anlegen...... 7 Dateien und Bilder verwalten... 14 Nachrichten / News

Mehr

U.motion. U.motion Control. Technisches Handbuch. Control-App für ios-geräte. 04/2014 Version 1.0.1. www.merten.com

U.motion. U.motion Control. Technisches Handbuch. Control-App für ios-geräte. 04/2014 Version 1.0.1. www.merten.com U.motion U.motion Control Control-App für ios-geräte 04/2014 Version 1.0.1 www.merten.com ALLGEMEINE INFORMATIONEN Schneider Electric GmbH c/o Merten Gothaer Straße 29, 40880 Ratingen www.merten.de www.merten-austria.at

Mehr

Sophos Mobile Control Benutzerhandbuch für Android

Sophos Mobile Control Benutzerhandbuch für Android Sophos Mobile Control Benutzerhandbuch für Android Produktversion: 2 Stand: Dezember 2011 Inhalt 1 Über Sophos Mobile Control... 3 2 Einrichten von Sophos Mobile Control auf einem Android-Mobiltelefon...

Mehr

Arbeiten mit Acrobat. Vorstellung von Adobe Acrobat Bearbeitung des Dokuments Präsentationen erstellen Teamarbeit

Arbeiten mit Acrobat. Vorstellung von Adobe Acrobat Bearbeitung des Dokuments Präsentationen erstellen Teamarbeit Arbeiten mit Acrobat Vorstellung von Adobe Acrobat Bearbeitung des Dokuments Präsentationen erstellen Teamarbeit Vollbildmodus Wählen Sie das Menü Fenster Vollbildmodus. Die aktuell angezeigte Seite verdeckt

Mehr

CI-Sign in Verbindung mit Mac OSx, iphone & Co. (Verteilung für Gruppen )

CI-Sign in Verbindung mit Mac OSx, iphone & Co. (Verteilung für Gruppen ) 1 von 10 CI-Sign in Verbindung mit Mac OSx, iphone & Co. (Verteilung für Gruppen ) ci solution GmbH 2012 Whitepaper Deutsch Version 1.0.0 -DRAFT- Verfasser: ci solution GmbH 2012 7. November 2012 2 von

Mehr

Referenzen Typo3. Blog der Internetagentur Irma Berscheid-Kimeridze Stand: Juni 2015

Referenzen Typo3. Blog der Internetagentur Irma Berscheid-Kimeridze Stand: Juni 2015 der Internetagentur Irma Berscheid-Kimeridze Stand: Juni 2015 Aktuelle Entwicklungen der Internetagentur Irma Berscheid-Kimeridze sollten auf der Webseite der Agentur dargestellt werden. Werkzeug der Wahl

Mehr

Zeiterfassungsanlage Handbuch

Zeiterfassungsanlage Handbuch Zeiterfassungsanlage Handbuch Inhalt In diesem Handbuch werden Sie die Zeiterfassungsanlage kennen sowie verstehen lernen. Es wird beschrieben wie Sie die Anlage einstellen können und wie das Überwachungsprogramm

Mehr

HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 1. Ausgabe, Dezember 2011 HTML5

HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 1. Ausgabe, Dezember 2011 HTML5 Linda York, Tina Wegener HTML5 Grundlagen der Erstellung von Webseiten 1. Ausgabe, Dezember 2011 HTML5 2 HTML5 - Grundlagen der Erstellung von Webseiten 2 Die erste Webseite mit HTML erstellen In diesem

Mehr

1. Software-Plattform Android Android. Was ist Android? Bibliotheken, Laufzeitumgebung, Application Framework

1. Software-Plattform Android Android. Was ist Android? Bibliotheken, Laufzeitumgebung, Application Framework 1. Software-Plattform Android Android Was ist Android? Plattform und Betriebssystem für mobile Geräte (Smartphones, Mobiltelefone, Netbooks), Open-Source Linux-Kernel 2.6 Managed Code, Angepasste Java

Mehr

Die XML-Schnittstelle von FreelancerWelt.de Projektimport

Die XML-Schnittstelle von FreelancerWelt.de Projektimport Die XML-Schnittstelle von FreelancerWelt.de Projektimport Die Schnittstelle ermöglicht es neue IT Projekte auf FreelancerWelt.de automatisch einzustellen, bestehende zu aktualisieren oder zu löschen. Wenn

Mehr

Kurzbeschreibung PC-Software für das Gerät URO-2050

Kurzbeschreibung PC-Software für das Gerät URO-2050 Kurzbeschreibung PC-Software für das Gerät URO-2050 1 Einleitung 1.1 Allgemeines Das Programm kann zum Verwalten der durchgeführten Untersuchungen mit dem Gerät URO-2050 benutzt werden. Es funktioniert

Mehr

DLS 7.0 Microsoft Windows XP Service Pack 2. Anleitung zur Konfiguration

DLS 7.0 Microsoft Windows XP Service Pack 2. Anleitung zur Konfiguration DLS 7.0 Microsoft Windows XP Service Pack 2 Anleitung zur Konfiguration Projekt: DLS 7.0 Thema: MS Win XP SP 2 Autor: Björn Schweitzer Aktualisiert von: Andreas Tusche am 18.08.2004 2:38 Dateiname: xpsp2.doc

Mehr