Mobile App Development. - Intents -
|
|
- Falko Martin
- vor 7 Jahren
- Abrufe
Transkript
1 Mobile App Development - Intents -
2 Inhalt Intents Intent-Resolution Intent-Filter Broadcast Receiver
3 Intents
4 Intents engl.: Absicht, Vorsatz, Zweck passive Datenstruktur, Nachrichtenpaket enthält: abstrakte Beschreibung einer auszuführenden Operation oder Informationen über ein eingetretenes Ereignis
5 Intents Grundlage für lose Kopplung von Anwendungsbausteinen Nachrichtenaustausch Sammlung von Informationen, die durch das Android System ausgewertet werden
6 Intents Intents werden verwendet für Starten & Stoppen von Activities und Services Nachrichten Broadcasts
7 Intents Bisher wurden Intents verwendet, um Activities und Services innerhalb der gleichen App zu starten Intent intent = new Intent(this, Act2.class); MyApp Act1 Act2 startactivity(intent); Inten Android: Intent Auswertung
8 Intents Wie werden Komponenten anderer Apps gestartet? Beispiel: DropBox App Ein Nutzer klickt in der DropBox App eine PDF-Datei Wie und mit welcher Activity soll die PDF-Datei angezeigt werden?
9 Intents Lösung Man beschreibt in einem Intent die Art der Daten, die behandelt werden sollen Android versucht eine App Komponente zu finden, mit der die Daten dargestellt, editiert oder anderweitig behandelt werden können
10 Intent Inhalt Ein Intent enthält verschiedene Datenfelder, die die Absicht näher beschreiben Component name Action Category Data Extras & Flags
11 Component name vollqualifizierter Name der Zielkomponente, die den Intent behandeln / verarbeiten soll Verwendung: Starten einer anderen Komponente (Activity, Service,...) expliziter Intent
12 Component name public class IntentActivity extends Activity { // Methode zum Starten der TargetActivity private void starttargetactivity() { // neuen Intent erstellen Intent intent = new Intent(); // ComponentName setzen intent.setcomponent(new ComponentName(this, TestActivity.class)); //... oder Class-Objekt setzen intent.setclass(this, TestActivity.class); //... oder Class-Name setzen intent.setclassname(this, "de.htwds.emrolab.mad.testactivity"); } } // Starten der Activity startactivity(intent);
13 Intent Action String, der angibt, welche Aktion: ausgeführt werden soll oder ausgeführt wurde (BroadcastReceiver) vordefinierte Actions (siehe Intent Klasse: ACTION_xxx): CALL, EDIT, BATTERY_LOW, HEADSET_PLUG,...
14 Intent Action Beispiel // Methode zum Anrufen einer Telefonnummer // (beutzt: android.permission.call_phone) private void docall() { } // intent erstellen Intent intent = new Intent(); // action zum Anrufen setzen intent.setaction(intent.action_call); // CALL action erwartet im Data-Teil eine Telefonnummer intent.setdata(uri.parse("tel: ")); // intent abschicken startactivity(intent);
15 Intent Data Zusätzliche Daten, die von der Ziel- Komponente verarbeitet werden URI Daten, die verarbeitet werden sollen, in URI-Darstellung Bsp.: tel: , geo: ,
16 Intent Data Beispiel: LatLng Anzeige // Methode zum Darstellen einer LatLng-Information private void showlatlng() { // intent erstellen Intent intent = new Intent(Intent.ACTION_VIEW); // URI mit LatLng-Informationen erstellen Uri uri = Uri.parse("geo: , "); // uri zum Intent hinzufügen intent.setdata(); // intent abschicken startactivity(intent); }
17 Intent Data MIME Typ der Daten, die verarbeitet werden sollen Beispiele: image/jpeg video/mp4 text/plain audio/mpeg
18 Intent Data Beispiel: Text senden // Methode zum Senden eines Textes private void sendsampletext() { // intent erstellen Intent intent = new Intent(Intent.ACTION_SEND); // MIME Typ für Text setzen intent.settype("text/plain"); // Sende-Text als intent extra hinzufügen intent.putextra(intent.extra_text, "My sample text"); // intent abschicken startactivity(intent); }
19 Intent Category beschreibt die Art der Zielkomponente, die den Intent behandeln soll Bsp.: CATAGORY_BROWSABLE => Browser CATEGORY_HOME => Desktop CATEGORY_LAUNCHER => Starter
20 Intent Category Beispiel // Methode zum Abrufen aller installierten Launcher private void querylaunchers() { // intent erstellen Intent intent = new Intent(); // action und category für launcher setzen intent.setaction(intent.action_main); intent.addcategory(intent.category_launcher); } // Anfrage an PackageManager stellen, um alle Activities zu // bekommen, die dem Intent entsprechen List<ResolveInfo> resolveinfo = getpackagemanager().queryintentactivities(intent, 0); // Verarbeitung der Ergebnisliste for (ResolveInfo info : resolveinfo) { // z.b.: Icon von jedem Launcher holen Drawable icon = getpackagemanager().getapplicationicon(info.activityinfo.applicationinfo); }
21 Intent Extras extra Informationen, die der Komponente, die den Intent behandelt, zur Verfügung gestellt werden ähnlich Data URIs Aufbau: Key-Value-Paare
22 Intent Extras Beispiel // Methode zum Starten einer Activity mit zusätzlichen Informationen private void startactivity() { // neuen Intent erstellen Intent intent = new Intent(this, TestActivity.class); // Hinzufügen von zusätzlichen Information zum Intent intent.putextra("my.extra.string", "My extra value"); intent.putextra("my.extra.int", 73); } // Starten der Activity startactivity(intent);
23 Intent Flags Informationen an das Android-System, wie die Ziel-Komponenten gestartet oder behandelt werden sollen
24 Intent Flags Beispiele (siehe Intent-Klasse): FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS Activity wird nicht in der Liste kürzlich gestarteter Andwendungen angezeigt FLAG_ACTIVITY_NO_ANIMATION Keine Animation bei Activity-Übergang
25 Intent Flags Beispiel // Methode zum Starten einer Activity mit zusätzlichen Informationen private void startactivity() { // neuen Intent erstellen und Ziel Activity setzen Intent intent = new Intent(this, TestActivity.class); /* Intent flags setzen Mehrere Intent flags werden durch den Oder-Operator miteinander verknüpft */ intent.setflags( Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS Intent.FLAG_ACTIVITY_NO_ANIMATION); } // Starten der Activity startactivity(intent);
26 ??? Intent Resolution
27 Intent Resolution Wie entscheidet das Android System, welcher Intent an welche Komponente weitergeleitet wird? Wie werden widersprüchliche Intent- Informationen behandelt?
28 Intent Arten Explizite Intents Zielkomponente wird explizit angegeben Anwendung typischerweise für Zielkomponenten innerhalb der gleichen App Beispiel: Intent intent = new Intent(); intent.setclass(context, TargetActivity.class); startactivity(intent);
29 Intent Arten Implizite Intents Name der Zielkomponente wird nicht gesetzt Intent beschreibt nur die Daten, die behandelt werden sollen Anwendung typischerweise um Komponenten in anderen Apps anzusprechen
30 Intent Resolution Auf Basis der Informationen im Intent (Component name, Action,...) wird von Android entschieden, welcher Intent wohin geschickt wird explizite Intents: einfach, da die Zielkomponente eingetragen ist implizite Intents: andere Intent Informationen müssen ausgewertet werden
31 Intent Resolution Zustellung von impliziten Intents erfolgt auf Basis von: action data category flags und extras spielen keine Rolle
32 Intent Resolution Was passiert wenn Android mehrere Apps findet, die den Intent behandeln können?
33 Intent Resolution Was passiert wenn Android mehrere Apps findet, die den Intent behandeln können? Android lässt den Benutzer wählen, welche App er verwenden möchte
34 Intent Filter
35 Intent Filter Intent Filter bestimmen, welche Intents von einer Komponente empfangen bzw. behandelt werden können Jede Komponente kann mehrere Filter haben und somit von anderen Apps benutzt werden
36 Intent Filter Beispiel <application >... <activity android:name=".testactivity" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name=".testactivity2"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.view" /> <category android:name="android.intent.category.default" /> <data android:mimetype="text/plain" /> </intent-filter> </activity>... </application>
37 Intent Filter Elemente Intent Filter bestehen aus drei verschiedenen Filterbedingungen (<action>, <category>, <data>) Werden alle Filterbedingungen von einem Intent erfüllt, kann er passieren Action Test Category Test Data Test
38 Action Test Jeder Intent Filter muss mind. eine Action enthalten, andernfalls blockt er alle Intents Die Intent-Action muss mit einer Action aus dem Filter übereinstimmen Enthält ein Intent keine Action, so passiert er automatisch den Filter
39 Action Test Beispiel: Mit welchem Intent kann die Activity gestartet werden? Intent intent1 = new Intent(); intent1.setaction(intent.action_main); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> </intent-filter> <intent-filter> <action android:name="de.htwds.emrolab.mada.myaction"/> </intent-filter> </activity> </application> </manifest>
40 Action Test Beispiel: Mit welchem Intent kann die Activity gestartet werden? Intent intent2 = new Intent(); intent2.setaction("de.htwds.emrolab.mada.mysecondaction"); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> </intent-filter> <intent-filter> <action android:name="de.htwds.emrolab.mada.myaction"/> </intent-filter> </activity> </application> </manifest>
41 Action Test Beispiel: Mit welchem Intent kann die Activity gestartet werden? Intent intent3 = new Intent(); intent3.setaction("de.htwds.emrolab.mada.myaction"); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> </intent-filter> <intent-filter> <action android:name="de.htwds.emrolab.mada.myaction"/> </intent-filter> </activity> </application> </manifest>
42 Category Test Ein Filter kann 0..* Category-Felder enthalten Ein Intent passiert den Test, wenn der Filter mindestens alle Categories enthält, die auch der Intent enthält ACHTUNG: Alle Intents, die per startactivity(...) gesendet werden, erhalten automatisch DEFAULT_CATEGORY
43 Category Test Beispiel: Kann der Intent passieren? Intent intent1 = new Intent(); intent1.addcategory(intent.category_launcher); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.main"/> <category android:name="android.intent.category.browsable"/> <category android:name="android.intent.category.info"/> </intent-filter> </activity> </application> </manifest>
44 Category Test Beispiel: Kann der Intent passieren? Intent intent2 = new Intent(); intent2.addcategory(intent.category_browsable); intent2.addcategory(intent.category_info); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.main"/> <category android:name="android.intent.category.browsable"/> <category android:name="android.intent.category.info"/> </intent-filter> </activity> </application> </manifest>
45 Category Test Beispiel: Kann der Intent passieren? Intent intent3 = new Intent(); intent3.addcategory(intent.category_launcher); intent2.addcategory(intent.category_info); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.main"/> <category android:name="android.intent.category.browsable"/> <category android:name="android.intent.category.info"/> </intent-filter> </activity> </application> </manifest>
46 Category Test Beispiel: Kann der Intent passieren? Intent intent4 = new Intent(); intent4.addcategory(intent.category_launcher); <manifest... > <application... > <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <category android:name="android.intent.category.launcher" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.main"/> <category android:name="android.intent.category.browsable"/> <category android:name="android.intent.category.info"/> </intent-filter> </activity> </application> </manifest>
47 Data Test Ein Filter kann 0..* Data-Felder enthalten Data-Feld besteht aus URI und/oder MIME: URI: scheme://host:port/path MIME: type/subtype Wildcards können verwendet werden, z. B.: oder audio/*
48 Data Test Ein Intent passiert den Filter, wenn weder der Intent noch der Filter URI oder Type gesetzt haben er ein URI enthält, der dem Filter entspricht und keinen Typ enthält und der Filter ebenfalls keinen Typ spezifiziert er einen Typ und kein URI enthält und der Filter einen entsprechenden Typ enthält und kein URI spezifiziert
49 Data Test Ein Intent passiert den Filter, wenn er einen Typ und ein URI enthält und der Filter ebenfalls den entsprechenden Typ und URI enthält Ausnahme: content: und file: Ein Filter unterstützt automatisch content und file, wenn selbst kein URI spezifiziert
50 Data Test Beispiel: Kann der Intent passieren? Intent intent1 = new Intent(); intent1.settype("image/png"); <manifest... > <application> <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main"/> <data android:mimetype="image/*"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.main"/> <data android:host="emrolab.htw-saarland.de"/> <data android:scheme="ftp"/> </intent-filter> </activity> </application> </manifest>
51 Data Test Beispiel: Kann der Intent passieren? Intent intent2 = new Intent(); intent2.setdata(uri.parse(" <manifest... > <application> <activity android:name="de.htwds.emrolab.mada.intents.mainactivity"> <intent-filter> <action android:name="android.intent.action.main"/> <data android:mimetype="image/*"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.main"/> <data android:host="emrolab.htw-saarland.de"/> <data android:scheme="ftp"/> </intent-filter> </activity> </application> </manifest>
52 Pending Intents
53 Pending Intents Pending Intents sind Intents, die eine Aktion enthalten, die später ausgeführt werden soll. Pending Intents ermöglichen einer anderen App das Ausführen von Code mit den eigenen Berechtigungen Beispiel: Eine Wecker App setzt einen Alarm, der zu einem späteren Zeitpunkt einen Sound abspielen soll
54 Pending Intents Ablauf App A kapselt in einem PendingIntent eine Aktion, die später von App B gestartet werden soll Der PendingIntent wird von A an B übergeben B führt die Aktion zu einem späteren Zeitpunkt aus, auch wenn A schon zerstört wurde
55 Pending Intents Verwendung NotificationManager: Erzeugen von Benachrichtigungen in der Statuszeile AlarmManager: Ausführung von Code zu einem festgelegten Zeitpunkt
56 Pending Intents PendingIntents werden mit der Klasse PendingIntent erstellt PendingIntents können zum Starten von Activities, Services und BroadcastReceivern erstellt werden
57 Pending Intents PendingIntent erstellen private void creatependingintent1() { } /* Activity eingetragen, die als Action ausgeführt werden soll */ Intent intenta = new Intent(this, TestActivity.class); /* Erstellen eines PendingIntents für eine Activity */ PendingIntent pia = PendingIntent.getActivity(this, 0, intenta, PendingIntent.FLAG_UPDATE_CURRENT);
58 Pending Intents PendingIntent erstellen private void creatependingintent1() { /* Activity eingetragen, die als Action ausgeführt werden soll */ Intent intenta = new Intent(this, TestActivity.class); /* Erstellen eines PendingIntents für eine Activity */ PendingIntent pia = PendingIntent.getActivity(this, 0, intenta, PendingIntent.FLAG_UPDATE_CURRENT); /* Service eingetragen, die als Action ausgeführt werden soll */ Intent intents = new Intent(this, TestService.class); /* Erstellen eines PendingIntents für einen Service */ PendingIntent pis = PendingIntent.getService(this, 0, intents, PendingIntent.FLAG_UPDATE_CURRENT); } /* BCR eingetragen, die als Action ausgeführt werden soll */ Intent intentb = new Intent(this, TestBCR.class); /* Erstellen eines PendingIntents für einen BroadcastReceiver */ PendingIntent pib = PendingIntent.getBroadcast(this, 0, intentb, PendingIntent.FLAG_UPDATE_CURRENT);
59 Pending Intents PendingIntent für einen Alarm verwenden public void createalarm(view view) { } // AlarmManager vom System abrufen */ AlarmManager mng = (AlarmManager) getsystemservice(context.alarm_service); /* Hier wird die Komponente eingetragen, die als Action ausgeführt werden soll */ Intent intent = new Intent(this, TestActivity.class); /* Erstellen eines PendingIntents für eine Activity */ PendingIntent pi = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); /* Alarm setzen */ mng.set(alarmmanager.elapsed_realtime, SystemClock.elapsedRealtime() + PERIOD, pi);
60 Pending Intents PendingIntent für einen Alarm verwenden Der AlarmManager kann durch den PendingIntent die übergebene Activity zu einem späteren Zeitpunkt ausführen
61 Broadcast Receiver
62 Broadcast Receiver Android-Komponente, die es ermöglicht, systemweite Nachrichten, sog. Broadcasts, zu empfangen können von Android unabhängig von anderen Komponenten aktiviert werden haben keine eigene Oberfläche
63 Broadcast Receiver BCRs werden verwendet, um auf Ereignisse zu reagieren, die mittels Broadcast publiziert wurden Beispiel: Android verschickt Ereignismeldungen, wenn der Batteriestand niedrig ist das System gestartet wurde das Ladekabel angesteckt wurde,...
64 Broadcast Receiver Implementierung BCRs leiten von der Klasse BroadcastReceiver ab... und müssen die Methode onreceive() überschreiben onreceive() wird aufgerufen, wenn der BCR eine Intent-Nachricht empfängt
65 BCR Implementierung // Test BroadcastReceiver public class MyTestReceiver extends BroadcastReceiver { } // Intent action, auf die der BCR hört public static final String BC_ACTION = "de.htwds.mad.testbc"; //... wird automatisch vom System aufgerufen, wenn ein Intent // mit obiger ACTION versendet public void onreceive(context context, Intent intent) { // Intent actions, categories,... testen if (BC_ACTION.equals(intent.getAction())) { // entsprechenden Code ausführen } //!!! ACHTUNG!!! // Für länger andauernde Operationen sollten Services verwendet // werden, andernfalls wird der BCR unter Umständen von Android // beendet (ANR)! }
66 BCR Registrierung Android Manifest <manifest xmlns:android=" package="de.htwds.emrolab.unitytest" android:versioncode="1" android:versionname="1.0" > <application <activity>... </activity> <receiver android:name=".broadcast.mytestreceiver"> <intent-filter> <action android:name="de.htwds.mad.testbc"/> <!-- <category android:name="..."/> --> <!-- <data android:mimetype="*/*"/> --> </intent-filter> </receiver> </application> </manifest>
67 BCR Registrierung programmatisch // Methode zum Registrieren eines BroadcastReceivers private void registermyreveiver(context context) { // Instanz der eigenen BCR Implementierung erstellen MyTestReceiver receiver = new MyTestReceiver(); // IntentFilter erstellen, der beschreibt, wann der BCR // informiert werden soll IntentFilter filter = new IntentFilter("de.htwds.mad.testbc"); } // BroadcastReceiver im System registrieren context.registerreceiver(receiver, filter);
68 Broadcast senden Broadcasts können nicht nur empfangen, sondern auch gesendet werden Das Senden erfolgt mit der Methode Context.sendBroadcast()
69 Broadcast senden Normalen Broadcast senden // Methode zum Senden eines "normalen" broadcast private void sendmybroadcast(context context) { // Intent für den broadcast erstellen Intent intent = new Intent("de.htwds.mad.testbc"); // Intent als "norlmalen" broadcast versenden context.sendbroadcast(intent); } Broadcast wird allen Interessenten ungeordnet und parallel zugestellt und danach beendet
70 Broadcast senden Sticky Broadcast senden // Methode zum Senden eines sticky Broadcast private void sendmystickybroadcast(context context) { // broadcast intent erstellen Intent intent = new Intent("de.htwds.mad.testbc"); // intent als sticky broadcast versenden context.sendstickybroadcast(intent); } Intent bleibt nach dem Broadcast weiter im System und kann verwendet werden Zustellung erfolgt ungeordnet, parallel Entfernung durch context.removestickybroadcast(intent)
71 Broadcast senden Ordered Broadcast bei normalen Broadcasts werden die Receiver ungeordnet parallel informiert Ordered Broadcasts werden den Receivern geordnet und einem nach dem anderen zugestellt Receiver können den Broadcast abbrechen oder Zwischenergebnisse weitergeben
72 Broadcast senden Ordered Broadcast senden /* Methode zum Senden eines Ordered Broadcasts */ private void sendmyorderedbroadcast(context context) { /* Intent mit der Broadcast Action erstellen */ Intent intent = new Intent("de.htwds.emrolab.mada"); } /* Ordered Broadcast senden (der zweite Parameter gibt eine Permission an, die der Receiver besitzen muss, um den Broadcast zu empfangen) */ context.sendorderedbroadcast(intent, "de.htwds.emrolab.mada.permission.view");
73 Ordered Broadcast Ordered Broadcast mit Ergebnissen Sender Result Receiver Receiver Receiver Result Result
74 Ordered Broadcast Zwischenergebnisse produzieren und weiterreichen public class MyReceiver extends BroadcastReceiver { public void onreceive(context context, Intent intent) { if (isorderedbroadcast()) { /* Ergebnisse vom vorherigen Receiver auswerten */ int code = getresultcode(); String data = getresultdata(); Bundle extras = getresultextras(false); /* eigentliche Arbeit erledigen */ } } } /* Ergebnisse an der nächsten Receiver weitergeben */ setresult(activity.result_ok, data, extras);
75 Ordered Broadcast Ergebnisse auswerten private void handlebroadcastresult(context context) { /* Broadcast intent erstellen */ Intent intent = new Intent("my.action"); /* Receiver erstellen, der als letzten in der Reihenfolge der * Receiver aufgerufen wird und die Zwischenergebnisse * verarbeiten kann */ BroadcastReceiver lastreceiver = new BroadcastReceiver() { public void onreceive(context context, Intent intent) { /* letzten Ergebnis bearbeiten */ } }; } /* Ordered Broadcast senden */ context.sendorderedbroadcast(intent, null, lastreceiver, null, 0, null, null);
76 LocalBroadcastManager LocalBroadcastManager für Broadcasts, die nur in der eigenen App verwendet werden Vorteile Broadcasts verlassen die eigene App nicht Effizienz
77 LocalBroadcastManager BCR registrieren /* BCR beim LocalBroadcastManager registrieren */ private void bla(context context) { // LBM Instanz abrufen LocalBroadcastManager mng = LocalBroadcastManager.getInstance(context); // IntentFilter erstellen IntentFilter filter = new IntentFilter("de.htwds.emrolab.mada"); // BroadcastReceiver implementieren BroadcastReceiver receiver = new BroadcastReceiver() public void onreceive(context context, Intent intent) { // Implementierung } }; // BroadcastReceiver beim LocalBroadcastManager registrieren mng.registerreceiver(receiver, filter); }
78 LocalBroadcastManager Broadcast senden & empfangen /* BCR beim LocalBroadcastManager registrieren */ private void sendandreceive(context context) { // LBM Instanz abrufen LocalBroadcastManager mng = LocalBroadcastManager.getInstance(context); // IntentFilter erstellen IntentFilter filter = new IntentFilter("de.htwds.emrolab.mada"); // BroadcastReceiver implementieren BroadcastReceiver receiver = new BroadcastReceiver() public void onreceive(context context, Intent intent) { // Implementierung } }; // BroadcastReceiver beim LocalBroadcastManager registrieren mng.registerreceiver(receiver, filter); } // // Broadcast Intent erstellen und senden Intent intent = new Intent("de.htwds.emrolab.mada"); mng.sendbroadcast(intent);
79 Fragen?
4. Software-Kompponenten in Android Broadcast Intents und Broadcast Receivers. Broadcast Intents
Broadcast Intents Broadcast Intents sind eine spezielle Art von Intents, die auf Betriebssystemebene (genauer: Application Framework) verschickt werden, nicht auf der Anwendungsebene Zweck: informieren
MehrProgrammieren 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 Intents (Wiederholung I) Ein Intent erklärt die Absicht eine bestimmte Activity auszuführen Explizit durch Angabe einer
MehrMobile App Development. - Alarm -
Mobile App Development - Alarm - Inhalt Alarme AlarmManger Wake locks 2 Alarm Alarm Oft ist es notwendig eine App zu starten, auch wenn der Benutzer nicht mit ihr interagiert Starten von Activities zu
Mehr4. 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
MehrEinführung in die Android App-Entwicklung. Patrick Treyer und Jannis Pinter
Einführung in die Android App-Entwicklung Patrick Treyer und Jannis Pinter Agenda Was ist Android? Android Versionen Layout, Strings und das Android Manifest Activities, Intents und Services Entwicklungsumgebung
MehrAutor: Version: Datum: Auerswald GmbH & Co. KG
Versionsverfolgung Version Datum Änderung Verfasser 1.0 25.10.2013 Erste Version. JWe 1.1 12.06.2015 COMfortel 3600 IP hinzugefügt JWe 1.2 26.06.2015 Anpassungen nach interner Überarbeitung JWe Inhaltsverzeichnis
MehrProgrammieren 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 Intents Activities werden von Objekten der Klasse android.content.intent gestartet Unterscheidung in explizite und implizite
MehrMobile App Development. - No1fica1ons -
Mobile App Development - No1fica1ons - No1fica1ons Notifications sind Benachrichtigungen, die dem Benutzer über die Android Statuszeile mitgeteilt werden Bildquelle: http://developer.android.com/guide/topics/ui/notifiers/notifications.html
Mehr2. Hintergrundverarbeitung in Android: Services und Notifications
2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht 2. Hintergrundverarbeitung in Android: Services und Notifications Übersicht: In Mobis 1: Threads; hier genauerer Blick auf Services
MehrMobile 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 ca. 10 Wochen
MehrANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum
Analyse der Android Plattform Andre Rein, Johannes Florian Tietje FH-Gieÿen-Friedberg Android Praktikum 28. Oktober 2010 Topics 1 Übersicht Android Plattform Application Framework Activities und Services
MehrNFC Near Field Communication 30.04.2013
NFC Near Field Communication 30.04.2013 NFC Near Field Communication Standard für kontaktlose Kommunikation auf Basis von RFID (radiofrequency identification) Fast Verschiedene RFID-Standards im 13,56
MehrMobile 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
MehrProzesse und Threads in Android
Prozesse und Threads in Android Jede gestartete Applikation ist eigener Prozess und läuft in eigener Dalvik VM Prozess startet User-Interface-Thread (UI-Thread), der für die sichtbaren Bestandteile der
MehrEinführung in Android (2) 16. Dezember 2014
Einführung in Android (2) 16. Dezember 2014 Überblick Entwicklung der Benutzeroberfläche Views Layouts Menüs Listen und Adapter Einbinden weiterer Ressourcen Aktivierung von Activities Entwicklungsrichtlinien
MehrEinfü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
MehrAndroid Apps. Mentoring SS 16. Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016
Android Apps Mentoring SS 16 Nicolas Lehmann, Sönke Schmidt, Alexander Korzec, Diane Hanke, Toni Draßdo 03.06.2016 Wichtige Dateien MainActivity.java activity_main.xml AndroidManifest.xml Die Dateien MainActivity.java,
MehrAndroid-Apps weitere Möglichkeiten
Android-Apps weitere Möglichkeiten 2/20 weitere Möglichkeiten Speichern in der Sandbox OnTouchListener Senden und Empfangen von SMS Anbindung von Datenbanken Der Beschleunigungssensor Übung 3/20 Speichern
MehrEreignisse (Events) Asynchrones Versenden von Informationen Sender (Herausgeber) Empfänger (Abonnent) Dr. Beatrice Amrhein
Ereignisse (Events) Asynchrones Versenden von Informationen Sender (Herausgeber) Empfänger (Abonnent) Dr. Beatrice Amrhein Überblick Definition eines Ereignisses Sender und Empfänger Einfache Ereignisse
MehrMobile App Development. - Activities -
Mobile App Development - Activities - Inhalt Activity Lifecycle Erstellen Starten & Stoppen Spezielle Activities Ac3vi3es Ac3vi3es Definition Eine Aktivität repräsentiert eine Interaktion mit einem Benutzer
MehrInhaltsverzeichnis. Apps für Android entwickeln
Inhaltsverzeichnis zu Apps für Android entwickeln von Jan Tittel und Jochen Baumann ISBN (Buch): 978-3-446-43191-1 ISBN (E-Book): 978-3-446-43315-1 Weitere Informationen und Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43191-1
MehrMobile App Development
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
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt!! 26.03.2014 FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert von Methoden! String Fehlercode als String! int Fehlercode
MehrÜ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
MehrEntwickeln 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
MehrMobile 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
MehrMobile App Development - Multitasking -
Mobile App Development - Multitasking - Inhalt Threading Services Service Lifecycle Gestartete Services Gebundene Services Threading Threading Standard Java Threads Thread Runnable volatile & synchronized
MehrEinstieg in die Informatik mit Java
1 / 13 Einstieg in die Informatik mit Java Schnittstellen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 13 1 Einführung 2 Definition einer Schnittstelle 3 Implementierung
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt 26.03.2014 tobias.witt@hhu.de 25.12.01.30 Bürozeiten: 09 Uhr - 12 Uhr FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert
Mehr12 Abstrakte Klassen, finale Klassen und Interfaces
12 Abstrakte Klassen, finale Klassen und Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält,
Mehr1 Einführung 1. 2 Einrichten der Arbeitsumgebung 9. 3 Schnelleinstieg in Xcode und Objective-C 25
1 Einführung 1 1.1 Das Smartphone 2 1.2 An wen richtet sich dieses Buch? 2 1.3 Buchaufbau und verwendete Technologien 3 1.4 Vorstellung des Beispielprojekts 4 2 Einrichten der Arbeitsumgebung 9 2.1 Installation
MehrÜberleben im Funkloch
Überleben im Funkloch Offlinefähige Apps für Android entwickeln Christian Janz (@c_janz ) christian.janz@bridging-it.de Christian Janz Consultant im Bereich Softwareentwicklung Java/JEE bei Bridging IT
MehrVorwort Android - eine offene, mobile Plattform 21
Vorwort 15 TEILI Grundlagen 1 Android - eine offene, mobile Plattform 21 1.1 Entstehung 21 1.1.1 Die Open Handset Alliance 22 1.1.2 Android Inc 22 1.1.3 Evolution einer Plattform 23 1.2 Systemarchitektur
MehrAccounts und Kontakte in Android
Accounts und Kontakte in Android Die letzten Wochen habe ich daran gearbeitet, die Kontakte der AddressTable von Leonardo und mir ins Android Adressbuch zu bringen. Dazu habe ich die AddressManagement-Applikation
Mehrmacrec OS X Server Anleitung zur Verwendung von Avelsieve (Mail Filter)
1 Login Wenn Sie bei uns eine Mailadresse gehostet haben, verfügen Sie über ein Konfigurationsblatt, dem Sie Webmailadresse, Benutzername und Passwort entnehmen können. Die Webmailadresse ist in aller
MehrANDROID. Grundbegriffe und Architektur. von Markku Lammerz für das Seminar Android: Plattform für mobile Geräte an der Universität Hamburg beim DKRZ
ANDROID Grundbegriffe und Architektur von Markku Lammerz für das Seminar Android: Plattform für mobile Geräte an der Universität Hamburg beim DKRZ Index Einleitung Kurzer Lebenslauf von Android Die Entwicklungshilfen
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Lehrstuhl für Programmierparadigmen Fortgeschr. Objektorientierung SS 2009 http://pp.info.uni-karlsruhe.de/ Dozent: Prof. Dr.-Ing. G. Snelting snelting@ipd.info.uni-karlsruhe.de
MehrAndroid-Apps Lösen einer quadratischen Gleichung I/O in einer Activity
Android-Apps Lösen einer quadratischen Gleichung I/O in einer Activity 2/30 quadrgleichung (I) alles untereinander angeordnet Neues Projekt anlegen Die View zur Texteingabe, Abfrage über die id R.id.edt_a2
MehrNaviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org
Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org Fachhochschule Münster Labor für Software Engineering luzar@fh-muenster.de www.naviki.org 1 Naviki die Idee www.naviki.org 2 Wie funktioniert
MehrDr. Monika Meiler. Inhalt
Inhalt 15 Parallele Programmierung... 15-2 15.1 Die Klasse java.lang.thread... 15-2 15.2 Beispiel 0-1-Printer als Thread... 15-3 15.3 Das Interface java.lang.runnable... 15-4 15.4 Beispiel 0-1-Printer
MehrBenutzerhandbuch. telegra WAM
Benutzerhandbuch telegra WAM Inhalt. Login... 3 2. Nachrichten versenden... 4 3. SIM-Karten verwalten... 5 4. Kontakte verwalten... 6 4. Neuen Kontakt erstellen... 7 4.2 Kontakte bearbeiten... 8 5. Versendete
MehrANDROID. Grundbegriffe und Architektur. von Markku Lammerz für das Seminar Android: Plattform für mobile Geräte an der Universität Hamburg beim DKRZ
ANDROID Grundbegriffe und Architektur von Markku Lammerz für das Seminar Android: Plattform für mobile Geräte an der Universität Hamburg beim DKRZ Index Einleitung Kurzer Lebenslauf von Android Die Entwicklungshilfen
MehrTeil I Augmented Learning - Vortragender: Krischan Udelhoven. Teil II Android - Vortragender: Folker Hoffmann
Teil I Augmented Learning - Vortragender: Krischan Udelhoven Teil II Android - Vortragender: Folker Hoffmann Inhalt 1.Warum Android? 2.Was ist Android? 3.Entwicklung mit Android 18. Januar 2010 Android
MehrExceptions und Vererbung
Exceptions und Vererbung Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Vererbung Polymorphie Methoden- & Eigenschaftsüberschreibung Weitere Schlüsselwörter 2. Exceptions Eigene Exceptions Handling
MehrAuf einen Blick. Elementare Anwendungsbausteine. Telefonfunktionen nutzen. Dateien und Datenbanken. Organizer und Multimedia
Auf einen Blick Auf einen Blick TEIL I Grundlagen 1 Android eine offene, mobile Plattform... 21 2 Hallo Android!... 43 3 Von der Idee zur Veröffentlichung... 73 TEIL II Elementare Anwendungsbausteine 4
MehrPrüfung Softwareentwicklung II (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 2 B, IB 2 C Sommersemester 2013 Prüfung Softwareentwicklung II (IB) Datum : 11.07.2013, 08:30 Uhr
MehrProgrammieren 1 09 Vererbung und Polymorphie
Programmieren 1 09 Vererbung und Polymorphie Bachelor Medieninformatik Sommersemester 2015 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 I. VERERBUNG 2 2 Vererbung Von Interfaces übernehmen
MehrFragen zur OOP in Java
- 1 - Inhalt Was bedeutet OOP?... 2 Was versteht man unter einer Klasse?... 2 Wie nennt man die Mitglieder einer Klasse?... 2 Wie erzeugt man Objekte?... 2 Wie greife ich auf Member einer Klasse zu?...
Mehr1 Abstrakte Klassen, finale Klassen und Interfaces
1 Abstrakte Klassen, finale Klassen und Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält,
Mehr2. 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
MehrHandbuch für die Erweiterbarkeit
Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6
Mehr3. Persistenz und Datenbanken Content Providers. Content Providers. Generische Schnittstelle zum Zugriff auf Daten zwischen Anwendungen
Content Providers Generische Schnittstelle zum Zugriff auf Daten zwischen Anwendungen Entkopplung der Daten-Schicht von der Anwendungsschicht Zugriff erfolgt URI-basiert Kontrolle der Zugriffsrechte eingebaute
Mehr/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();
Bereich: Grafische Benutzeroberflächen (UI), Events (2) Editor Package: de.dhbwka.java.exercise.ui.editor Klasse: Editor Aufgabenstellung: Schreiben Sie einen kleinen Texteditor mit Swing! Keine Panik,
MehrSoftware Entwicklung 1
Software Entwicklung 1 Annette Bieniusa / Peter Zeller AG Softech FB Informatik TU Kaiserslautern Das Android Framework zur Entwicklung von Apps Bieniusa/Zeller Software Entwicklung 1 2/ 46 Frameworks
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 03 Vererbung, Polymorphie, Sichtbarkeit, Interfaces Clemens Lang T2 11. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/26 Klassen und Objekte Klassen und Objekte
MehrInformatikarbeit. Android development. Christian Eppler. 4. Januar 2013. Hochschule Ravensburg-Weingarten
Informatikarbeit Android development Christian Eppler 4. Januar 2013 Hochschule Ravensburg-Weingarten Vielen Dank möchte ich an dieser Stelle an Frau Prof. Dr.-Ing. Keller aussprechen, Die diese Arbeit
MehrInhalt. 3 Kurzeinführung 15 Das Android-SDK installieren 15 Einen PATH zu den Werkzeugen einrichten 16 Eclipse installieren 16
Inhalt Vorwort XIII 1 Android im Überblick 1 Was ist Android? 1 Was»umfassend«bedeutet 1 Open Source-Plattform 2 Speziell für Mobilgeräte 2 Geschichte 3 Googles Motivation 3 Open Handset Alliance 4 Android-Versionen
MehrApps programmieren. App-Komponenten KAPITEL 4
D3kjd3Di38lk323nnm KAPITEL 4 Apps programmieren Sofern Sie dieses Buch sequenziell lesen (was nicht unbedingt erforderlich ist), sind Sie aus den vorangegangenen Kapiteln so weit mit den internen Zusammenhängen
MehrAndroid Processes & Services
Android Processes & Services Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Ziele heute Arbeitsblatt 4 besprechen (inkl. Repetition)
MehrVorkurs Informatik WiSe 15/16
Java 7 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 21.10.2015 Technische Universität Braunschweig, IPS Überblick OO in Java Vererbung Abstrakte Klassen und Interfaces 21.10.2015 Dr. Werner Struckmann
MehrJava - Menü und Intent. Leibniz Universität IT Services Anja Aue
Java - Menü und Intent Leibniz Universität IT Services Anja Aue Menüs Auswahl von verschiedenen Möglichkeiten mit Hilfe von Menüeinträgen. Menüeinträge können Untermenüs öffnen. Definition des Menüs in
MehrEinstieg in die Informatik mit Java
1 / 35 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 35 1 Grundlagen 2 Verdeckte Variablen 3 Verdeckte Methoden 4 Konstruktoren
MehrKomponenten & Frameworks Seite 1
Ausgangssituation Wir wollen eine einfache Windowsanwendung mit einem Fenster erstellen. Dieses Fenster enthält (Container!) einen Button der beim klicken das Schreiben in ein Textfeld bewirkt. Was ist
MehrGraphische Benutzungsoberflächen mit Java. Einführung in NetBeans
Graphische Benutzungsoberflächen mit Java Einführung in NetBeans Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung
MehrGroße Übung Praktische Informatik 1
Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,
MehrBancontact/Mister Cash Mobile
Inhaltsverzeichnisses 1. Einleitung 2. So funktioniert es 2.1 So sieht die Zahlungsseite aus 2.1.1 Auf einem Computer 2.1.2 Auf einem Tablet 2.1.3 Auf einem Smartphone 3. Konfiguration 3.1 Test 4. Integration
MehrInstitut für Programmierung und Reaktive Systeme. Java 6. Markus Reschke
Institut für Programmierung und Reaktive Systeme Java 6 Markus Reschke 13.10.2014 OOP Objekte = Verhalten (durch Methoden) + Daten (durch Attribute) Klassen = Baupläne für Objekte Kapselung von Programmteilen
MehrKapitel 9 Schnittstellen
Kapitel 9 Schnittstellen Korbinian Molitorisz IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Agenda Was ist eine Schnittstelle?
MehrGrundzüge der Programmierung. Wiederverwendung VERERBUNG
Grundzüge der Programmierung Wiederverwendung VERERBUNG Inhalt dieser Einheit Syntax: Vererbung in Java Superklassen - Subklassen Konstruktorenaufruf in Subklassen super, abstract und final 2 Code-Reuse
Mehrhue13 January 30, 2017
hue13 January 30, 2017 1 Abgabehinweise Beachten Sie unbedingt diese Hinweise, sonst erhalten Sie keine Punkte aus dieser Abgabe! Für Details siehe z.b. Folien der nullten Zentralübung 1.1 Namen und Matrikelnummern
MehrÜbung 1: Object Inspector
Übung 1: Object Inspector Es ist ein System zu entwickeln, mit dem man Objektstrukturen bezüglich ihrer Properties analysieren und dann in einem Tree Viewer (JTree) anzeigen und bearbeiten kann. Properties
MehrTutorial. 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
MehrSmartphone 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
MehrAndroid 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
MehrKlausur Software-Entwicklung März 01
Aufgabe 1: minimaler Punktabstand ( 2+5 Punkte ) Matrikelnr : In einem Array punkte sind Koordinaten von Punkten gespeichert. Ergänzen Sie in der Klasse Punkt eine Klassen-Methode (=static Funktion) punktabstand,
MehrGib dem Projekt (z.b.) den Namen MyApplication und klicke auf Next. Der Domain-Name ist beliebig.
Mit Android Studio Seiten mit Text, Bildern Schaltknöpfen generieren, um zu den Seiten und zum Internet navigieren zu können. Stufe 1: Gehe zu http://developer.android.com/sdk/index.html, lade Android
MehrVererbung, Polymorphie
Vererbung, Polymorphie Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 21.1.08 G. Bohlender (IANM UNI Karlsruhe) Vererbung, Polymorphie 21.1.08
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces
Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse
MehrDie abstrakte Klasse Expression:
Die abstrakte Klasse Expression: Expression abstract evaluate() Add Neg Const 501 Die abstrakte Klasse Expression: Expression abstract evaluate() Add Neg Const Leider (zum Glück?) lässt sich nicht die
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces. Auswertung von Ausdrücken. Beispiel. Abstrakte Methoden und Klassen
Auswertung von Ausdrücken Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt.
MehrCocktail-Rezepte-APP
Application Name: Cocktails Company Domain: gsog.de Empty Activity Main Activity: FindCocktailActivity Layout: activity_find_cocktail Was ist neu??
Mehr14 Abstrakte Klassen, finale Klassen, Interfaces
Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse
MehrInterface. So werden Interfaces gemacht
Design Ein Interface (=Schnittstelle / Definition) beschreibt, welche Funktionalität eine Implementation nach Aussen anzubieten hat. Die dahinter liegende Algorithmik wird aber der Implementation überlassen.
MehrThomas Künneth. Android 3. Apps entwickeln mit dem Android SDK. Galileo Press
Thomas Künneth Android 3 Apps entwickeln mit dem Android SDK Galileo Press Vorwort 13 TEIL I Grundlagen 1.1 Entstehung 19 1.1.1 Die Open Handset Alliance, 20 1.1.2 Android Ine 20 1.1.3 Evolution einer
MehrKapitel 10 Delegationsvariablen
Kapitel 10 Delegationsvariablen Korbinian Molitorisz IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Agenda Wie werden
MehrEinstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick: Vererbung 2 Grundidee Vererbung 3 Verdeckte Variablen
MehrEinführung in die Android-Entwicklung
Einführung in die Android-Entwicklung Marko Gargenta Deutsche Übersetzung von Lars Schulten O'REILLY~ Bejing. Cambridge. Farnham. Köln Sebastopol. Tokyo Inhalt Vorwort XIII 1 Android im Überblick 1 Was
MehrVerwendung des OPC-Clients von Softing
Automatisierungstechnik OPC-Client Seite 1 / 10 Verwendung des OPC-Clients von Softing Die nachfolgende Anleitung beschreibt die Verwendung des OPC-Clients von Softing. Der Demo OPC Client stellt ein einfaches
MehrC# - Einführung in die Programmiersprache Fehler abfangen. Leibniz Universität IT Services Anja Aue
C# - Einführung in die Programmiersprache Fehler abfangen Leibniz Universität IT Services Anja Aue Fehler in einem Programm Warnungen sind Hinweise auf eventuelle Fehler während der Laufzeit des Programms.
MehrBeispiel droidremoteppt
Arthur Zaczek Nov 2014 1 Beispiel droidremoteppt 1.1 Beschreibung Powerpoint soll mit ein Android Handy über Bluetooth gesteuert werden Folien wechseln (Vor/Zurück) Folien am Handy darstellen Am Handy
MehrVererbung und Polymorphie
Vererbung und Polymorphie Marc Satkowski, Sascha Peukert 29. September 2016 C# Kurs Gliederung 1. Methodenüberladung 2. Vererbung Polymorphie Methoden- & Eigenschaftsüberschreibung Weitere Schlüsselwörter
MehrDokumentation Benachrichtigungen
LogiSoft GmbH & Co. KG software & consulting Maibachstraße 7 35683 Dillenburg Germany Telefon +49 (0)700. LOGISOFT +49 (0)2772. 57 269-0 Telefax +49 (0)2772. 57 269-99 E-Mail info@logisoft.de Internet
MehrÜbungsblatt 9. Thema: Methoden-Dispatching, Datenstrukturen, Abstrakte Datentypen
Informatik I WS 05/06 Prof. Dr. W. May Dipl.-Inform. Oliver Fritzen Dipl.-Inform. Christian Kubczak Übungsblatt 9 Ausgegeben am: Abgabe bis: 06.01.2006 17.1.2006 (Theorie) 20.1.2006 (Praktisch) Thema:
MehrVererbung. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 23.5.
Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 23.5.07 G. Bohlender (IANM UNI Karlsruhe) Vererbung 23.5.07 1 / 22 Übersicht 1
MehrParallele und funktionale Programmierung Sommersemester Übung Abgabe bis , 10:00 Uhr
4. Übung Abgabe bis 16.05.2013, 10:00 Uhr Aufgabe 4.1: Thread-Sicherheit a) Wann sind Klassen korrekt? Wie kann man nicht korrekte Klassen erkennen? b) Wann sind Klassen thread-sicher? Wie kann man nicht
MehrUepaa Alleinarbeiterschutz
Uepaa Alleinarbeiterschutz Benutzeranleitung & Prozessbeschreibung Datum: 6. Juni 2016 Kontaktinformationen Uepaa AG Dominic Bestler Seefeldstrasse 301A CH- 8008 Zürich Tel: +41 44 809 6000 support@uepaa.ch
MehrInstitut für Programmierung und Reaktive Systeme. Java 7. Markus Reschke
Institut für Programmierung und Reaktive Systeme Java 7 Markus Reschke 14.10.2014 Vererbung in Java Vererbung ermöglicht es, Klassen zu spezialisieren Wiederverwendung vorhandener Klassen Kindsklasse erhält
Mehr