7,80. Deutschland. Österreich 9,00 Schweiz 15,80 sfr Luxemburg 9,20. Core Bluetooth ab. Einführung in die BLE-Entwicklung mit ios

Größe: px
Ab Seite anzeigen:

Download "7,80. Deutschland. Österreich 9,00 Schweiz 15,80 sfr Luxemburg 9,20. Core Bluetooth ab. Einführung in die BLE-Entwicklung mit ios"

Transkript

1 Oktober 2013 München Deutschland 7,80 Österreich 9,00 Schweiz 15,80 sfr Luxemburg 9,20 Volume 12 MOBILE TECHNOLOGY Expo: Oktober 2013 Ausgabe 3/2013 KSH R O W R E W PO INTERNATIONAL PHP CONFERENCE 2013 #MVFUPPUI -& t J04 t "OESPJE t #MBDL#FSSZ t 3BTQCFSSZ 1J LI U J. 8 1 S I SPECIAL B OPS FOR FREE Große Infografik: CI mit Git 34 Core Bluetooth ab ios 6 Einführung in die BLE-Entwicklung mit ios istockphoto.com/oktalstudio Java in ios und Android Media-Partner: Präsentiert von: Veranstalter: Mobile Entwicklung mit dem Application Developer Framework BlackBerry Live 2013: BlackBerry wieder in der Offensive App Store Optimization: Alternative App Stores und das Freemium-Modell Odyssee: Mit Sencha Touch und Apache Cordova zur mobilen Applikation Raspberry Pi: Spaß mit Embedded Monetarisierung: zanox SDK für ios und Android Sieben Zwerge: Die beliebtesten Einplatinencomputer im Überblick

2 012 ios Bluetooth LE und ios 6 Einführung in die BLE-Entwicklung mit ios Erste Schritte mit Core Bluetooth ab ios 6 istockphoto.com/oktalstudio Mobile Technology

3 Bluetooth LE und ios 6 ios 013 Core Bluetooth hat für typische Anwendungsfälle aus den Bereichen Healthcare, Heimvernetzung, Entertainment, Security und Sport/ Fitness Einzug in ios 5 gehalten. Selbst Themen wie abstandsabhängige Kommunikation zwischen Geräten werden mit dem relativ neuen Standard adressiert. In diesem Zuge entwickelt sich Bluetooth LE zu einer echten Alternative zu NFC und wird selbst für Szenarien wie mobiles Bezahlen oder die Spieleindustrie interessant. von Wolfgang Frank und Samuel Mellert Mobile Technology

4 014 ios Bluetooth LE und ios 6 Das in ios 5 eingeführte Core-Bluetooth- Framework deckt die meisten Aspekte der Bluetooth-4.0-Low-Energy-(LE-)Spezifikation ab. Konnte man mit ios 5 nur auf Bluetooth-LE-Geräte zugreifen, die Daten bereitstellen, so wurde mit ios 6 das API erweitert, damit sich ios-geräte selbst als Datenlieferant anbieten können. Leider unterstützen nur die neueren ios-geräte und Macs die Bluetooth- LE-(BLE-)Spezifikation. Dazu gehören das iphone 4S, iphone 5, der Mac Mini, das neue ipad, MacBook Air und MacBook Pro. Seit ios 6 gibt es auch eine BLE- Unterstützung des iphone-simulators, die allerdings in der Praxis aufgrund der verschiedenen BLE Dongles recht problematisch ausfällt. Apple wird den Support des Simulators voraussichtlich in nächsten ios-versionen wieder einstellen. Alternativ zu echten ios-devices gibt es auch diverse Bluetooth-LE-Development-Kits, die Sensordaten wie Gyroscope, Temperatur, Accelerometer und Ähnliches anbieten. Am Bekanntesten ist momentan vermutlich das Sensor-Tag von Texas Instruments, das man für nur 25 US-Dollar erwerben kann. Das Tüfteln mit diesen externen Sensoren macht wirklich viel Spaß und beflügelt manch eine Idee im Kontext des Internet of Things und der Machine Listing 1: BizCardServer.m #import "BizCardServer.h" #import <CoreBluetooth/CoreBluetooth.h> #define NOTIFY_MTU BizCardServer () (nonatomic, strong) CBPeripheralManager (nonatomic, strong) CBMutableService (nonatomic, strong) CBMutableCharacteristic (strong, nonatomic) NSData (nonatomic, readwrite) NSInteger Listing 2: BizCardServer.m: init // First create the peripheral manager to act as server (manager) for data -(id)init if (self = [super init]) _peripheralmanager = [[CBPeripheralManager alloc] initwithdelegate:self queue:dispatch_queue_create("ble_queue", nil)]; return self; to Machine -Vernetzung. Es liegt durchaus nahe, dass BLE ebenfalls die Grundlage für die viel spekulierte iwatch bilden wird. Im Gegensatz zu WLAN oder dem klassischen Bluetooth ist Bluetooth LE nicht besonders gut geeignet, um große Datenmengen wie Bilder, Videos oder Dokumente zu übertragen, da sich nur geringe Transferraten realisieren lassen. Die Stärken von BLE liegen in der geringeren Sendeleistung so kann ein BLE-Gerät, ausgestattet mit einer kleinen Knopfbatterie, leicht über mehrere Monate betrieben werden. Das wäre mit herkömmlichem Bluetooth oder WLAN undenkbar. Weiter ist es möglich, BLE-Geräte ad hoc miteinander zu verbinden, ohne mühselige Pairing-Orgien durchzuführen. Ein explizites Pairing ist nur für verschlüsselte Übertragungen notwendig. Bluetooth LE verlangt keine Konformität zu MFI (Made for iphone), sondern man kann auch ohne Zertifizierung eigene Peripherals erstellen, bzw. verwenden. Die wichtigsten Frameworkklassen Schauen wir uns die wichtigsten Klassen aus dem Core- Bluetooth-(CB-)Framework genauer an. Grundsätzlich wird zwischen Central und Peripheral unterschieden. Das gesamte Framework dreht sich um diese beiden Komponenten und regelt anhand von Delegate Callbacks den Austausch von Informationen und Daten zwischen ihnen. Eine Analogie findet man in Client-/ Serverarchitekturen, bzw. im Provider-/Subscriber- Muster. Das Central übernimmt dabei die Rolle des Clients/Subscriber, der Daten abfragt bzw. benötigt. Das Peripheral enthält Daten, die angeboten werden, und spielt somit die Rolle eines Servers/Provider. Wie bereits erwähnt, kann ab ios 6 ein Gerät sowohl Central als auch Peripheral sein, jedoch leider nicht beides zur selben Zeit! Die Central-Komponente wird durch die CBCentralManager-Klasse und die Peripheral- Komponente durch die CBPeripheralManager-Klasse repräsentiert. CBCentralManager-Objekte werden verwendet, um entdeckte oder verbundene Peripherals, die durch CBPeripheral-Objekte repräsentiert werden, zu verwalten. Der CBCentralManager dient insbesondere dazu, nach Peripherals zu scannen, diese zu entdecken und sich mit ihnen zu verbinden. Anders herum wird auf der Seite eines Peripherals durch ein CBCentral- Objekt der Client repräsentiert, der sich mit dem Peripheral verbunden hat. Man kann sich das so vorstellen, dass ein Peripheral nach außen hin über Broadcasts bekannt gibt, Daten anzubieten. In diesem Angebot können so genannte Services enthalten sein. Auf der Gegenseite scannt ein Central die Umgebung nach vorhandenen Services. Sobald ein gesuchter Service gefunden wird, kann der Central eine Verbindung zum Peripheral aufbauen. Ist diese Verbindung erfolgreich aufgebaut, können die beiden Geräte Daten untereinander austauschen. Die Daten für den Austausch sind in Services organisiert, die wiederum aus verschiedenen so genannten Characteristics bestehen. Eine Characteristic ist im Grunde ein definierter Attributtyp, der einen logischen Mobile Technology

5 Bluetooth LE und ios 6 ios 015 Wert enthält. Zahlreiche Services und Characteristics sind mittlerweile standardisiert, sodass auch herstellerunabhängig beispielsweise ein Heartrate-Monitor durch einen gleichen Service oder zumindest gleiche Characteristics seine Daten anbietet. Auf der Central- Seite wird ein Service durch eine CBService-Klasse repräsentiert. Jeder dieser Services enthält eine Liste von Characteristics, jeweils repräsentiert durch eine CBCharacteristics-Klasse. Auf gleiche Weise werden Services und Characteristics auf Seiten des Peripherals durch ihre erzeugbaren, bzw. veränderbaren Pendants, CBMutableService und CBMutableCharacteristic umgesetzt. Sowohl ein Service als auch eine Characteristic müssen eindeutig durch eine UUID identifizierbar sein. Das Core-Bluetooth-Framework stellt hierfür die Hilfsklasse CBUUID bereit. In Abbildung 1 wird der Zusammenhang der Kernkomponenten nochmals illustriert. Im Folgenden werden anhand eines einfachen Beispiels die grundlegenden Mechanismen von Core Bluetooth in der Anwendung vorgestellt. Dazu erstellen wir ein Peripheral, das einen Service anbietet, sowie ein Central, das sich ab einer bestimmten räumlichen Nähe zum Peripheral verbindet und die bereitgestellten Daten abruft. Idealerweise probiert man das Beispiel mit zwei BLE-fähigen ios-geräten aus. In diesem Beispiel kapseln wir die Client-, bzw. Serverfunktionalität in zwei eigene Klassen (BizCardServer => Peripheral und Biz- CardClient => Central). Ein eigenes Peripheral bauen Die im Folgenden aufgeführten Schritte sind notwendig, um ein Peripheral zu erstellen: Einen CBPeripheralManager erzeugen und starten Einen CBMutableService mit CBMutableCharacteristic erzeugen Service bekanntgeben (advertise) Mit der Central verbinden und Daten austauschen Im Xcode-Projekt muss als Allererstes das CoreBluetooth.framework unter LINKED FRAMEWORK AND LIBRARIES eingebunden werden In unserem BizCardServer (Listing 1) importieren wir die Core-Bluetooth-Framework-Header (<CoreBluetooth/CoreBluetooth.h>). Damit wir auf die Callbacks in der Rolle als Peripheral reagieren können, müssen wir das entsprechende CBPeripheralManagerDelegate- Protokoll implementieren. Zusätzlich legen wir Properties für den Peripheral-Manager, den zu erstellenden Service und die beinhaltende Characteristic an. Ebenso benötigen wir für das Beispiel ein datatosend-property, das die anzubietenden Daten in einem NSData Object hält, sowie eine senddataindex als Hilfszähler, um auch Datenmengen versenden zu können, die nicht in einem einzigen Chunk übertragen werden können, sondern auf mehrere Datenpakete aufgeteilt werden müssen. Abb. 1: Die wichtigsten Kernkomponenten in Core Bluetooth In der init-methode initialisieren wir den Peripheral- Manager. Das erste Argument setzt das delegate (in unserem Fall self). Im zweiten Argument kann eine Queue angegeben werden, falls zum Beispiel der Peripheral- Manager nicht im Main Thread laufen soll. Wir erzeugen in unserem Beispiel eine eigene BLE_Queue-Queue mittels Grand Central Dispatch und übergeben diese als Argument (Listing 2). Sobald der Peripheral-Manager initialisiert wurde, müssen wir seinen Zustand überprüfen (Listing 3). Dies ist notwendig, um sicherzustellen, dass unsere App auch tatsächlich auf einem Bluetooth-LE-fähigen Gerät läuft. Dazu implementieren wir die Delegate-Methode peripheralmanagerdidupdatestate:. Hier können wir auch ggf. passende Infomeldungen an den User weitergeben, Listing 3: BizCardServer.m: Status BLE prüfen // Check if Bluetooth LE is available and setup service - (void)peripheralmanagerdidupdatestate:(cbperipheralmanager *)peripheral switch (peripheral.state) case CBPeripheralManagerStatePoweredOn: [self setupservice]; break; default: Manager did update state"); UIAlertView *alert = [[UIAlertView alloc] Info" LE is not available or activated" delegate:nil otherbuttontitles:nil, nil]; [alert show]; break; Mobile Technology

6 016 ios Bluetooth LE und ios 6 falls Bluetooth im System nicht aktiviert wurde oder nicht verfügbar ist. Im Falle des Status CBPeripheralManagerState- PoweredOn wissen wir, dass BLE verfügbar ist, und wir können unseren anzubietenden Service erzeugen ([self setupservice], Listing 4). Die weiteren validen States findet man in der Core-Bluetooth-Framework-Referenzdokumentation. Jeder Service und jede Characteristic wird durch eine 16- bzw. 128-Bit-UUID identifiziert. Im Falle von eigenen Anwendungen muss man eine 128-Bit-UUID verwenden und sollte dafür sorgen, dass es keine Kollisionen mit anderen UUIDs von anderen Services bzw. Characteristics gibt. Die 16-Bit-UUIDs werden durch die Bluetooth-SIG vergeben. Als Hilfe kann man im OSX-Terminal einfach das Kommando uuidgen aufrufen, um eigene eindeutige Identifier zu erzeugen. Listing 4: BizCardServer.m: Service und Characteristic erzeugen // Construct a new service and publish it - (void)setupservice // Create characteristic self.cardcharacteristic = [[CBMutableCharacteristic alloc] nitwithtype:[cbuuid UUIDWithString:kCardCharacteristicUUID] properties:cbcharacteristicpropertynotiy value:nil permissions:cbattributepermissionsreadable]; // Create service and add characteristic self.cardservice = [[CBMutableService alloc] initwithtype: [CBUUID UUIDWithString:kCardServiceUUID] primary:yes]; // Set the characteristic for service self.cardservice.characteristics // Publish service [self.peripheralmanager addservice:self.cardservice]; Listing 5: BizCardService.h: UUIDs für Service und Characteristic #ifndef BizCardService_h #define BizCardService_h #define #define #endif In unserem Fall benötigen wir zwei UUIDs: eine für den Service und eine für die Characteristic (Listing 5). In Listing 4 sieht man die Erzeugung eines Service. Als Erstes wird jedoch eine Characteristic erzeugt und die CBUUID, die unserer selbst generierten UUID entspricht, als ersten Parameter der initwithtype:proper ties:value:permissions-methode übergeben. Als drittes Argument wird nil übergeben, was so viel bedeutet, wie dass sich der Wert für diese Characteristic dynamisch ergibt und nicht schon statisch feststeht. Das entspricht dem generellen Vorgehen beim Erzeugen von dynamischen Daten. Falls der Wert jedoch sowieso immer konstant bleibt, spricht natürlich auch nichts dagegen, diesen hier fest anzugeben. Der zweite Parameter der init-methode bestimmt, in welcher Form der Wert verwendet werden soll. Ein paar der wichtigsten Möglichkeiten sind im Folgenden aufgelistet: CBCharacteristicPropertyBroadcast: Erlaubt den Broadcast eines Characteristic-Werts durch Verwendung des characteristic configuration descriptor. CBCharacteristicPropertyRead: Erlaubt das Lesen des Characteristic-Werts. CBCharacteristicPropertyWriteWithoutResponse: Ermöglicht das Schreiben des Characteristic-Werts, jedoch ohne Antwort. CBCharacteristicPropertyWrite: Ermöglicht das Schreiben des Characteristic-Werts. CBCharacteristicPropertyNotify: Ermöglicht die Benachrichtigung bei Änderungen des Characteristic- Werts ohne Antwort. Des Weiteren sind Konstanten, bzw. Parameter für Verschlüsselung und Signierung von Characteristic- Wertänderungen verfügbar. Für diese weiterführenden Themen findet man die Details in der Core-Bluetooth- Developer-Dokumentation. Das letzte Argument der init-methode sind die Lese-, Schreibe- und Verschlüsselungsrestriktionen für Attribute. Mögliche Werte sind: CBAttributePermissionsReadable CBAttributePermissionsWriteable CBAttributePermissionsReadEncryptionRequired CBAttributePermissionsWriteEncryptionRequired Nachdem die Characteristic erzeugt wurde, wird der Service erstellt. Auch dieser erhält eine CBUUID, die wir zuvor selbst generiert haben. Diesem Service fügen wir eine Liste der Characteristics hinzu, um die hierarchische Struktur aufzubauen (Abb. 2). Am Ende der Methode sagen wir dem Peripheral-Manager, dass dieser Service dem Peripheral hinzugefügt werden soll. Durch das Hinzufügen des Service zum Peripheral- Manager wird der nächste Delegate Callback peripher almanager:didaddservice:error ausgelöst. Oft wird an dieser Stelle das Bekanntmachen (Advertising) des Service gestartet. In unserem Beispiel wollen wir das expli- Mobile Technology

7 Bluetooth LE und ios 6 ios 017 zit durch eine Nutzeraktion starten können und haben dazu eine eigene Methode startadvertisingbizcardservice und stopadvertisingbizcardservice erzeugt, die unsere BizCardServer-Klasse auch im Header File publik macht (in Listing 6 nicht explizit gezeigt). Das Advertising erfolgt durch periodische Broadcasts des Peripherals. Um die initiale Erkennung zu beschleunigen, aber auch gleichzeitig die Batterie zu schonen, werden nach dem Starten des Advertisings die Pakete in kurzen Zeitabständen versendet und nach einiger Zeit werden diese Intervalle automatisch vergrößert. Das gleiche Vorgehen trifft auf das Scanning nach Devices durch das Central zu. Befindet sich die App im Vordergrund, erfolgt das Advertising des Peripherals sowie das Scanning auf Central-Seite mit höherer Intensität, als wenn sich die App im Hintergrund befindet. Man sollte also beachten, dass sich die Zeiträume für das Entdecken und Verbinden von BLE- Geräten im Background verlängern. Core Bluetooth verfügt über ein Caching der Characteristics (nicht der Werte), um das Entdecken und Analysieren der Services zu beschleunigen. Das Advertise-Paket, das maximal 31 Bytes an Daten/Informationen enthalten kann, liefert neben der Service-UUID auch eine Information zur Signalstärke (RSSI), die verwendet werden kann, um die Distanz zwischen den Geräten zu bestimmen. Es handelt sich dabei um einen ungenauen Wert, der lediglich helfen kann, zwischen nah, mittelweit und ganz weit zu unterscheiden, wobei die Grenzen je nach Geräten und Wetterlage und Umgebungsparametern (z. B. Luftfeuchtigkeit, Temperatur, elektromagnetische Störquellen) schwanken können. Nachdem der Peripheral-Manager begonnen hat, den Service bekannt zu machen (Advertising), empfängt er über seine Delegate-Methoden die Nachricht peripheral- Manager:didStartAdvertising:. Sobald sich ein Central mit dem Peripheral verbunden hat, bekommt man den centraldidconnect-callback des CBPeripheralManagerDelegate. Üblicherweise gefolgt von Read Requests für den Wert einer Characteristic, die durch den Callback didreceivereadrequest signalisiert werden. Der CBPeripheralManager antwortet in der Regel mit respondtorequest auf die Anfragen und liefert somit die gewünschten Daten, bis der Central die Verbindung beendet, was durch einen Aufruf des centraldiddisconnect aus dem Delegate-Protokoll auf Seiten des Peripherals sichtbar wird. Eine andere, oftmals bessere Möglichkeit, ist es, den sog. Subscription/Notify-Mechanismus zu verwenden, bei dem ein Central über angebotene Daten und deren Änderungen automatisch benachrichtigt wird. Hat sich ein Central für einen Service, bzw. für eine Characteristic subscribed (siehe BizCardClient), wird dies über einen Callback der peripheralmanager:cent ral:didsubscribetocharacteristic: Delegate-Methode bekannt gemacht. An dieser Stelle kann dann der dynamische Inhalt erstellt und per updatevalue:forcha Abb. 2: Struktur von Services und Characteristics Listing 6: BizCardServer.m: Advertise starten // When service is added start advertising it via Bluetooth LE - (void)peripheralmanager:(cbperipheralmanager *)peripheral didaddservice:(cbservice *)service error:(nserror *)error if (error == nil) Setup (not advertised yet!)"); else adding service: [error localizeddescription]); // Public method - (void)startadvertisingbizcardservice // Start advertising service [self.peripheralmanager startadvertising: CBAdvertisementDataServiceUUIDsKey UUIDWithString:kCardServiceUUID] ] ]; // Public method - (void)stopadvertisingbizcardservice // Stop advertising service [self.peripheralmanager stopadvertising]; Mobile Technology

8 018 ios Bluetooth LE und ios 6 Listing 7: BizCardServer.m: Daten senden // Recognize when the central unsubscribes - (void)peripheralmanager:(cbperipheralmanager *)peripheral central:(cbcentral *)central didunsubscribefromcharacteristic:(cbcharacteristic *)characteristic unsubscribed from characteristic"); // Catch when someone subscribes to our characteristic, then start sending // them data - (void)peripheralmanager:(cbperipheralmanager *)peripheral central:(cbcentral *)central didsubscribetocharacteristic:(cbcharacteristic *)characteristic if ([characteristic.uuid isequal:[cbuuid UUIDWithString:kCardCharacteristicUUID]]) subscribed to kcardcharacteristicuuid"); // Create some sampel data --> could be provided dynamically! self.datatosend = : 'Peter', 'lastname' : 'Pan','organization' : 'New kids on the block', 'location' : 'Neverland','contact' : datausingencoding:nsutf8stringencoding]; // Reset index self.senddataindex = 0; // Start sending data [self senddata]; // Sends the next amount of data to the connected central - (void)senddata // First up, check if we're meant to be sending an EOM static BOOL sendingeom = NO; if (sendingeom) // send EOM if ([self.peripheralmanager updatevalue: datausingencoding:nsutf8stringencoding] forcharacteristic:self.cardcharacteristic onsubscribedcentrals:nil]) // Mark it as sent sendingeom = NO; EOM"); else // It didn't send, so we'll exit and wait for // peripheralmanagerisreadytoupdatesubscribers to call senddata again // We're not sending an EOM, so we're sending data // Data left to send? if (self.senddataindex >= self.datatosend.length) // No data left. Do nothing // There's data left, so send until the callback fails, or we're done. BOOL didsend = YES; // Make the next chunk while (didsend) // How big should chunk be NSInteger amounttosend = self.datatosend.length - self.senddataindex; // Can't be longer than 20 bytes if (amounttosend > NOTIFY_MTU) amounttosend = NOTIFY_MTU; // Copy out the data we want NSData *chunk = [NSData datawithbytes: self.datatosend.bytes+self.senddataindex length:amounttosend]; // Send next chunk of data if ( [self.peripheralmanager updatevalue: chunk forcharacteristic:self.cardcharacteristic onsubscribedcentrals:nil] ) NSString *stringfromdata = [[NSString alloc] initwithdata: chunk encoding:nsutf8stringencoding]; stringfromdata); // Update our index self.senddataindex += amounttosend; // Was it the last one? if (self.senddataindex >= self.datatosend.length) // It was - send an EOM // Set this so if the send fails, we'll send it next time sendingeom = YES; // Send EOM if ([self.peripheralmanager updatevalue: datausingencoding:nsutf8stringencoding] forcharacteristic:self.cardcharacteristic onsubscribedcentrals:nil]) // we're all done sendingeom = NO; EOM"); else else // Didn't work - drop out and wait for the callback // This callback comes in when the PeripheralManager is ready to send the next // chunk of data. This is to ensure that packets will arrive in the order they are sent. - (void)peripheralmanagerisreadytoupdatesubscribers: (CBPeripheralManager *)peripheral // Start sending again [self senddata]; Mobile Technology

9 Bluetooth LE und ios 6 ios 019 racteristic:onsubscribedcentrals: versendet werden. Sollte die Größe der Daten 20 Bytes überschreiten (NO- TIFY_MTU), können diese nicht mit einem Mal übertragen werden und der Datenstrom muss in Häppchen ( Chunk ) übertragen werden. In unserem Beispiel wird ein EOM als Signal für das Ende einer Nachricht gesendet (Listing 7). Das Zerteilen der Nachricht entspricht weitestgehend dem BTLE-Beispielprojekt von Apple, wobei es hier natürlich auch schönere Wege gibt, um diesen Mechanismus zu realisieren. Die Interaktion zwischen Central und Peripheral sowie der Datenaustausch können auch mit entsprechenden BackgroundModes in der info.plist im Hintergrund durchgeführt werden. Apple empfiehlt jedoch, die Apps so zu gestalten, dass das Scannen und Verbinden über ein Start/Stop-Konzept für einen Nutzer aktiv und sichtbar umgesetzt wird, da ansonsten durch die Hintergrundtätigkeiten der Anwendung der Energie- und Datenbedarf des Geräts schnell sehr hoch ausfallen kann, was wiederum zu einer schlechten User Experience führt. Ein Central bauen Nachdem wir mit unserem Peripheral als Server Daten anbieten, müssen wir noch ein Central als Client erstellen, der diese Daten konsumiert. Dazu implementieren Die Interaktion zwischen Central und Peripheral sowie der Datenaustausch können auch im Hintergrund ausgeführt werden. wir in unserem Central (gekapselt durch BizCardClient) das CBCentralManagerDelegate- sowie das CB- PeripheralDelegate-Protokoll, um die entsprechenden Callbacks für das Set-up des Centrals, den Verbindungsaufbau und die Interaktion mit dem Peripheral zu erhalten. Als Properties merken wir uns einen CBCentralManager sowie das verbundene CBPeripheral und ebenfalls ein NSMutableData-Property, das die empfangenen Daten aufnimmt. Analog zum Peripheral zuvor wird in der init-methode der Central-Manager erzeugt, self als Delegate gesetzt und eine GCD-Queue angegeben, in der das Central ablaufen soll, da ansonsten bei nil die Main Queue verwendet wird. Sobald der Central- Manager initialisiert ist, kann sein Status überprüft werden, um ebenso sicherzustellen, dass das Gerät BLE Anzeige Wissen, wie s geht.

10 020 ios Bluetooth LE und ios 6 unterstützt. Wie beim Peripheral erfolgt dies durch die Implementierung einer Delegate-Methode centralmanagerdidupdatestatus: (Listing 8). Oft wird hier bereits der Scan nach Peripherals gestartet. In unserem Beispiel haben wir diesen Schritt, um den Scan zu starten, Listing 8: BizCardClient.m: Initialisierung des Centrals #import "BizCardClient.h" #import <CoreBluetooth/CoreBluetooth.h> #define kupperproximityrssilimit -15 #define klowerproximityrssilimit BizCardClient () <CBCentralManagerDelegate, (nonatomic, strong) CBCentralManager (nonatomic, strong) CBPeripheral (nonatomic, strong) BizCardClient // First create the central manager to act as client (manager) for data -(id)init if (self = [super init]) _centralmanager = [[CBCentralManager alloc] initwithdelegate:self queue:dispatch_queue_create("ble_queue", nil)]; _data = [[NSMutableData alloc] init]; return self; - (void)centralmanagerdidupdatestate:(cbcentralmanager *)central switch (central.state) case CBCentralManagerStatePoweredOn: //[self scan]; // We'll make the scanning startable by the user Manager ready to scan for services"); break; default: Manager did change state"); break; - (void)scan [self.centralmanager [CBUUID UUIDWithString:kCardServiceUUID] ] ]; in eine eigene public-methode verlagert, um den Scan durch den User direkt start- und stopbar zu machen. Die scanforperipheralswithservices:options-methode wird verwendet, um das Scanning nach Advertisements des Peripherals zu starten. Als Argument kann eine Liste der spezifischen Services (UUIDs) mitgegeben werden, um die Suche einzuschränken. Wenn ein Peripheral entdeckt wird, erfolgt ein Aufruf des Delegates central:diddiscoverperipheral:advertism entdata:rssi: mit den Advertisement-Daten und dem RSSI-Signalstärkewert (Received Signal Strength Indicator). Letzterer kann verwendet werden, um sich nur mit einem Gerät zu verbinden, das sich in einem gewünschten Abstand befindet (Listing 9). Hat man ein passendes Peripheral gefunden, wird eine Verbindung über die Central-Manager-Methode connectperipheral:options: hergestellt. Mit dem Optionsparameter kann gesteuert werden, ob das Connect und Disconnect mit einem Peripheral zu weiteren Notifications/Alerts führen soll. Dieser Connect-Aufruf mündet in einen Delegate Callback didconnectperipheral:. Ist eine Verbindung zu dem Peripheral hergestellt, wird dieses mittels discoverservices: mit optionaler Liste der Service-UUIDs als Parameter gefragt, die zum Peripheral gehörenden Services zu finden (Listing 9). Analog zum Entdecken des Peripherals wird ein gefundener Service durch einen asynchronen Delegate Callback peripheral:diddiscoverservice: und eine gefundene Characteristic durch den Delegate Callback peripheral: diddiscovercharacteristics: signalisiert. In letzterem Fall sieht man im Beispielcode (Listing 10), dass die von uns gewünschte (und vom Peripheral bereitgestellte) Characteristic durch setnotifyvalue:forcharacteristic: subscribed wird. Dadurch erfolgt bei Änderungen des Werts auf Seiten des Peripherals in unserem Central ein Callback der Delegate-Methode peripheral:didupdatenotification- StateForCharacteristic:error: sowie ein Aufruf von peri pheral:didupdatevalueforcharacteristic:error:, der die empfangenen Chunks für die subscribed Characteristic entgegennimmt und in unserem Beispiel zu einem gesamten NSData-Objekt zusammenfügt, bis das EOM als Terminierungssignal empfangen wird (Listing 11). Im Beispiel trennen wir danach auch die Verbindung zum Peripheral mittels cancelperipheralconnection: und unsubscriben uns von der Characteristic. Damit haben wir auch schon alle Schritte durchgeführt, um Daten zwischen zwei BLE-Geräten abhängig von der Distanz zueinander auszutauschen. Wie man sieht... Wie man sieht, macht es das Core-Bluetooth-Framework einem Entwickler sehr einfach, die Funktionalität in eigene Apps zu integrieren und auch verschiedenste bereits vorhandene BLE-Endgeräte anzubinden, oder vielleicht sogar auch als Bastler mit z. B. Raspberry Pi und Bluetooth LE Dongle eigene externe Sensoren und Steuer-/Regelmechanismen zu entwerfen. Die zahl- Mobile Technology

11 Bluetooth LE und ios 6 ios 021 Listing 9: BizCardClient.m: Initialisierung des Centrals - (void)centralmanager:(cbcentralmanager *)central diddiscoverperipheral:(cbperipheral *)peripheral advertisementdata:(nsdictionary *)advertisementdata RSSI:(NSNumber *)RSSI // Reject any where the value is above reasonable range // Reject if the signal strength is too low to be close enough (Close is // around -22dB) if (RSSI.integerValue > kupperproximityrssilimit RSSI.integerValue < klowerproximityrssilimit) far or too close RSSI: RSSI); // Stops scanning for peripheral if close enough [self.centralmanager stopscan]; if (self.connectedperipheral!= peripheral) self.connectedperipheral = peripheral; to peripheral peripheral); Data : [advertisementdata objectforkey:cbadvertisementdatalocalnamekey], [advertisementdata objectforkey:cbadvertisementdataserviceuuidskey]); RSSI); // Connects to the discovered peripheral [self.centralmanager connectperipheral:peripheral options:nil]; - (void)centralmanager:(cbcentralmanager *)central didconnectperipheral:(cbperipheral *)peripheral // Clears the data [self.data setlength:0]; // Set peripheral delegate peripheral.delegate = self; // Asks peripheral to discover service [peripheral [CBUUID UUIDWithString:kCardServiceUUID] ]]; - (void)centralmanager:(cbcentralmanager *)central didfailtoconnectperipheral:(cbperipheral *)peripheral error:(nserror *)error if (error) connecting to peripheral: [error localizeddescription]); [self cleanup]; - (void)centralmanager:(cbcentralmanager *)central diddisconnectperipheral:(cbperipheral *)peripheral error:(nserror *)error if (error) disconnecting peripheral: [error localizeddescription]); [self cleanup]; self.connectedperipheral = nil; // Disconnected ==> start scanning again //[self scan]; Listing 10: BizCardClient.m: Services und Characteristics entdecken - (void)peripheral:(cbperipheral *)peripheral diddiscoverservices:(nserror *)error if (error) discovering service: [error localizeddescription]); [self cleanup]; for (CBService *service in peripheral.services) found with UUID: service.uuid); // Discovers the characteristics for a given service if ([service.uuid isequal:[cbuuid UUIDWithString:kCardServiceUUID]]) [peripheral UUIDWithString:kCardCharacteristicUUID]] forservice:service]; - (void)peripheral:(cbperipheral *)peripheral diddiscovercharacteristicsforservice:(cbservice *)service error:(nserror *)error if (error) discovering characteristic: [error localizeddescription]); [self cleanup]; if ([service.uuid isequal:[cbuuid UUIDWithString:kCardServiceUUID]]) for (CBCharacteristic *characteristic in service.characteristics) if ([characteristic.uuid isequal:[cbuuid UUIDWithString:kCardCharacteristicUUID]]) // Subscribe to characteristic [peripheral setnotifyvalue:yes forcharacteristic:characteristic]; Mobile Technology

12 022 ios Bluetooth LE und ios 6 reichen Kaskaden über die diversen Delegate-Aufrufe durchzuführen, macht den Code leider nicht sehr übersichtlich, aber hier gibt es bereits erste Frameworks, die versuchen, durch Block-APIs zu verbessern. Die Bluetooth-LE-Technologie und Core Bluetooth als Framework stehen gemessen an den Möglichkeiten sicher noch ganz am Anfang und haben ein enormes Potenzial für weitere fantasievolle Anwendungsfälle. Unserer Meinung nach handelt es sich dabei um ein Zukunftsthema, dass man als ios-entwickler auf jeden Fall auf dem Radar behalten sollte. Wolfgang Frank ist Geschäftsführer der arconsis IT-Solutions GmbH aus Karlsruhe. Er beschäftigt sich seit mehreren Jahren hauptsächlich mit der Android- und ios-entwicklung. Als Agile Coach und Softwarearchitekt für komplexe Enterprise-Systeme unterstützt er Kunden beim Bau von Mobile Gateways zur Anbindung an die mobile Welt. Er schreibt für diverse Magazine Fachartikel und hält regelmäßig Vorträge auf Fachkonferenzen wie der MobileTech Con. Samuel Mellert ist seit 2012 bei der arconsis IT-Solutions GmbH im Bereich Mobile Software Development in der ios-entwicklung tätig. Davor hat er bereits fünf Jahre Berufserfahrung in der Erstellung verteilter skalierbarer Web Services bei einem großen deutschen Internetunternehmen gesammelt. Samuel ist unter anderem als Coach für ios-trainings und -Workshops tätig. Links & Literatur [1] invasivecode-blog: [2] Apple-Core-Bluetooth-Referenz: [3] WWDC 2012 Video Core Bluetooth 101 Session 703 [4] WWDC 2012 Video Advanced Core Bluetooth Session 705 [5] WWDC 2013 Video Core Bluetooth Session 703 [6] WWDC 2013 Video Nearby Networking with Multipeer Connectivity Session 708 [7] WWDC 2013 Video What s New in Core Location Session 307 [8] Beispielcode des Artikels: Listing 11: BizCardClient.m: Empfang von Daten an der Central // This callback lets us know more data has arrived via notification // on the characteristic - (void)peripheral:(cbperipheral *)peripheral didupdatevaluefor Characteristic:(CBCharacteristic *)characteristic error:(nserror *)error if (error) discovering characteristics: [error localizeddescription]); [self cleanup]; NSString *stringfromdata = [[NSString alloc] initwithdata:characteristic. value encoding:nsutf8stringencoding]; // Have we got everything we need? if ([stringfromdata // We have, so show the data NSString *receiveddata = [[NSString alloc] initwithdata:self.data encoding:nsutf8stringencoding]; Data so far: receiveddata); // Cancel our subscription to the characteristic [peripheral setnotifyvalue:no forcharacteristic:characteristic]; // and disconnect from the peripehral [self.centralmanager cancelperipheralconnection:peripheral]; dispatch_async(dispatch_get_main_queue(), ^ UIAlertView *alert = [[UIAlertView alloc] arrived" delegate:nil otherbuttontitles:nil]; [alert show]; ); // Otherwise, just add the data on to what we already have [self.data appenddata:characteristic.value]; // Log it stringfromdata); // The peripheral letting us know whether our subscribe/unsubscribe // happened or not - (void)peripheral:(cbperipheral *)peripheral didupdatenotificationstatefor Characteristic:(CBCharacteristic *)characteristic error:(nserror *)error if (error) changing notification state: error.localizeddescription); // Exit if it's not the transfer characteristic if (![characteristic.uuid isequal:[cbuuid UUIDWithString:kCardCharacteristicUUID]]) // Notification has started if (characteristic.isnotifying) began on characteristic); // Notification has stopped else // so disconnect from the peripheral stopped on Disconnecting", characteristic); [self.centralmanager cancelperipheralconnection:peripheral]; Mobile Technology

p^db=`oj===pìééçêíáåñçêã~íáçå=

p^db=`oj===pìééçêíáåñçêã~íáçå= p^db=`oj===pìééçêíáåñçêã~íáçå= Error: "Could not connect to the SQL Server Instance" or "Failed to open a connection to the database." When you attempt to launch ACT! by Sage or ACT by Sage Premium for

Mehr

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich?

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich? KURZANLEITUNG Firmware-Upgrade: Wie geht das eigentlich? Die Firmware ist eine Software, die auf der IP-Kamera installiert ist und alle Funktionen des Gerätes steuert. Nach dem Firmware-Update stehen Ihnen

Mehr

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part XI) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part XI) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

Aber genau deshalb möchte ich Ihre Aufmehrsamkeit darauf lenken und Sie dazu animieren, der Eventualität durch geeignete Gegenmaßnahmen zu begegnen.

Aber genau deshalb möchte ich Ihre Aufmehrsamkeit darauf lenken und Sie dazu animieren, der Eventualität durch geeignete Gegenmaßnahmen zu begegnen. NetWorker - Allgemein Tip 618, Seite 1/5 Das Desaster Recovery (mmrecov) ist evtl. nicht mehr möglich, wenn der Boostrap Save Set auf einem AFTD Volume auf einem (Data Domain) CIFS Share gespeichert ist!

Mehr

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2

ReadMe zur Installation der BRICKware for Windows, Version 6.1.2. ReadMe on Installing BRICKware for Windows, Version 6.1.2 ReadMe zur Installation der BRICKware for Windows, Version 6.1.2 Seiten 2-4 ReadMe on Installing BRICKware for Windows, Version 6.1.2 Pages 5/6 BRICKware for Windows ReadMe 1 1 BRICKware for Windows, Version

Mehr

BLK-2000. Quick Installation Guide. English. Deutsch

BLK-2000. Quick Installation Guide. English. Deutsch BLK-2000 Quick Installation Guide English Deutsch This guide covers only the most common situations. All detail information is described in the user s manual. English BLK-2000 Quick Installation Guide

Mehr

Software-Entwicklung für Android und ios

Software-Entwicklung für Android und ios Software-Entwicklung für Android und ios Teil 5: Sensoren Typen von Sensoren Zweck Beispiele Hardware-Sensoren Ermitteln tatsächliche Werte Accelerometer, Magnetometer, Gyroskop, Barometer, Näherungssensor,

Mehr

Effizienz im Vor-Ort-Service

Effizienz im Vor-Ort-Service Installation: Anleitung SatWork Integrierte Auftragsabwicklung & -Disposition Februar 2012 Disposition & Auftragsabwicklung Effizienz im Vor-Ort-Service Disclaimer Vertraulichkeit Der Inhalt dieses Dokuments

Mehr

If you have any issue logging in, please Contact us Haben Sie Probleme bei der Anmeldung, kontaktieren Sie uns bitte 1

If you have any issue logging in, please Contact us Haben Sie Probleme bei der Anmeldung, kontaktieren Sie uns bitte 1 Existing Members Log-in Anmeldung bestehender Mitglieder Enter Email address: E-Mail-Adresse eingeben: Submit Abschicken Enter password: Kennwort eingeben: Remember me on this computer Meine Daten auf

Mehr

USB Treiber updaten unter Windows 7/Vista

USB Treiber updaten unter Windows 7/Vista USB Treiber updaten unter Windows 7/Vista Hinweis: Für den Downloader ist momentan keine 64 Bit Version erhältlich. Der Downloader ist nur kompatibel mit 32 Bit Versionen von Windows 7/Vista. Für den Einsatz

Mehr

Titelbild1 ANSYS. Customer Portal LogIn

Titelbild1 ANSYS. Customer Portal LogIn Titelbild1 ANSYS Customer Portal LogIn 1 Neuanmeldung Neuanmeldung: Bitte Not yet a member anklicken Adressen-Check Adressdaten eintragen Customer No. ist hier bereits erforderlich HERE - Button Hier nochmal

Mehr

11: Echtzeitbetriebssystem ucos-ii

11: Echtzeitbetriebssystem ucos-ii 11: Echtzeitbetriebssystem ucos-ii Sie lernen anhand aufeinander aufbauender Übungen, welche Möglichkeiten ein Echtzeitbetriebssystem wie das ucosii bietet und wie sich damit MC-Applikationen realisieren

Mehr

Von Keerthikan T. & Siyar Kolusari 10.12.2012

Von Keerthikan T. & Siyar Kolusari 10.12.2012 M226 OBJECT ORIENTIERT PROGRAMMIEREN Project Checkers An online multi-player Java Game Von Keerthikan T. & Siyar Kolusari 10.12.2012 Inhaltsverzeichnis 1. Projektbeschreibung 3 1.1. Inhalt 3 2. Ziele

Mehr

Übersicht. Generalversammlung SGRP Rahmenprogramm Live Hacking eines Access Points. Ziel: Programm:

Übersicht. Generalversammlung SGRP Rahmenprogramm Live Hacking eines Access Points. Ziel: Programm: Generalversammlung SGRP Rahmenprogramm Live Hacking eines Access Points Roland Portmann, dipl. Ing. ETH Seite 1 Live Hacking eines Access Points Übersicht Ziel: Wichtigsten Probleme beim Einsatz von WLAN

Mehr

1.1 IPSec - Sporadische Panic

1.1 IPSec - Sporadische Panic Read Me System Software 9.1.2 Patch 2 Deutsch Version 9.1.2 Patch 2 unserer Systemsoftware ist für alle aktuellen Geräte der bintec- und elmeg-serien verfügbar. Folgende Änderungen sind vorgenommen worden:

Mehr

Instruktionen Mozilla Thunderbird Seite 1

Instruktionen Mozilla Thunderbird Seite 1 Instruktionen Mozilla Thunderbird Seite 1 Instruktionen Mozilla Thunderbird Dieses Handbuch wird für Benutzer geschrieben, die bereits ein E-Mail-Konto zusammenbauen lassen im Mozilla Thunderbird und wird

Mehr

Selbststudium OOP5 21.10.2011 Programmieren 1 - H1103 Felix Rohrer

Selbststudium OOP5 21.10.2011 Programmieren 1 - H1103 Felix Rohrer Kapitel 4.1 bis 4.3 1. zu bearbeitende Aufgaben: 4.1 4.1: done 2. Was verstehen Sie unter einem "Java-Package"? Erweiterungen verschiedener Klassen welche in Java benutzt werden können. 3. Sie möchten

Mehr

White Paper - Integration von PRO Tips Recovery Tools in RiZone

White Paper - Integration von PRO Tips Recovery Tools in RiZone White Paper - Integration von PRO Tips Recovery Tools in RiZone Jörg Tonn (Hönigsberg & Düvel Datentechnik) Thorsten Weller Sarah Dietrich Copyright 2010 All rights reserved. Rittal GmbH & Co. KG Auf dem

Mehr

1. General information... 2 2. Login... 2 3. Home... 3 4. Current applications... 3

1. General information... 2 2. Login... 2 3. Home... 3 4. Current applications... 3 User Manual for Marketing Authorisation and Lifecycle Management of Medicines Inhalt: User Manual for Marketing Authorisation and Lifecycle Management of Medicines... 1 1. General information... 2 2. Login...

Mehr

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) Oliver Steinhauer Markus Urban.mobile PROFI Mobile Business Agenda MOBILE ENTERPRISE APPLICATION PLATFORM AGENDA 01 Mobile Enterprise Application Platform

Mehr

Klausur Verteilte Systeme

Klausur Verteilte Systeme Klausur Verteilte Systeme SS 2005 by Prof. Walter Kriha Klausur Verteilte Systeme: SS 2005 by Prof. Walter Kriha Note Bitte ausfüllen (Fill in please): Vorname: Nachname: Matrikelnummer: Studiengang: Table

Mehr

Software-Entwicklung für Android und ios

Software-Entwicklung für Android und ios Software-Entwicklung für Android und ios Allgemeine Informationen Zur Veranstaltung Wählbar als - Seminar Wirtschaftsinformatik - Wahlpflichtmodul Sondergebiete der Informatik - Zusatzfach Angesetze Termine:

Mehr

Parameter-Updatesoftware PF-12 Plus

Parameter-Updatesoftware PF-12 Plus Parameter-Updatesoftware PF-12 Plus Mai / May 2015 Inhalt 1. Durchführung des Parameter-Updates... 2 2. Kontakt... 6 Content 1. Performance of the parameter-update... 4 2. Contact... 6 1. Durchführung

Mehr

Java Batch Der Standard für's Stapeln

Java Batch Der Standard für's Stapeln Java Batch Der Standard für's Stapeln Berlin Expert Days 18.09.2015 Dirk Weil, GEDOPLAN GmbH Dirk Weil GEDOPLAN GmbH, Bielefeld GEDOPLAN IT Consulting Konzeption und Realisierung von IT-Lösungen GEDOPLAN

Mehr

VoiceXML 3.0. Jan Pit Wagner Fachbereich Informatik Seminar Moderne Webtechnologien 25. November 2009

VoiceXML 3.0. Jan Pit Wagner Fachbereich Informatik Seminar Moderne Webtechnologien 25. November 2009 VoiceXML 3.0 Jan Pit Wagner Fachbereich Informatik Seminar Moderne Webtechnologien 25. November 2009 Zielsetzungen dieses Vortrages VoiceXML vorstellen. Zeigen, dass VoiceXML einfach ist. Für den Einsatz

Mehr

Programmieren für iphone und ipad

Programmieren für iphone und ipad Markus Stäuble Programmieren für iphone und ipad Einstieg in die App-Entwicklung für das ios 4 3., aktualisierte und erweiterte Auflage dpunkt.verlag 1 Einleitung 1 1.1 Begriffe 2 1.2 Was behandelt dieses

Mehr

German English Firmware translation for T-Sinus 154 Access Point

German English Firmware translation for T-Sinus 154 Access Point German English Firmware translation for T-Sinus 154 Access Point Konfigurationsprogramm Configuration program (english translation italic type) Dieses Programm ermöglicht Ihnen Einstellungen in Ihrem Wireless

Mehr

Isabel Arnold CICS Technical Sales Germany Isabel.arnold@de.ibm.com. z/os Explorer. 2014 IBM Corporation

Isabel Arnold CICS Technical Sales Germany Isabel.arnold@de.ibm.com. z/os Explorer. 2014 IBM Corporation Isabel Arnold CICS Technical Sales Germany Isabel.arnold@de.ibm.com z/os Explorer Agenda Introduction and Background Why do you want z/os Explorer? What does z/os Explorer do? z/os Resource Management

Mehr

Energieverbrauch von verschiedene Bluetooth Smart Varianten

Energieverbrauch von verschiedene Bluetooth Smart Varianten Energieverbrauch von verschiedene Bluetooth Smart Varianten Jachen Bernegger Institute of ZHAW Zürcher Hochschule für Angewandte Wissenschaften berj@zhaw.ch For information contact: info.ines@zhaw.ch Ablauf

Mehr

Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation

Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation Einsatz einer Dokumentenverwaltungslösung zur Optimierung der unternehmensübergreifenden Kommunikation Eine Betrachtung im Kontext der Ausgliederung von Chrysler Daniel Rheinbay Abstract Betriebliche Informationssysteme

Mehr

Log Parser 2.0 HackerScan.js. Beschreibung. Anforderungen. Unterstützte Plattformen. Script-Code. Zurück zur Übersichtsseite

Log Parser 2.0 HackerScan.js. Beschreibung. Anforderungen. Unterstützte Plattformen. Script-Code. Zurück zur Übersichtsseite Zurück zur Übersichtsseite Log Parser 2.0 HackerScan.js (Engl. Originaltitel: HackerScan.js) Beschreibung Dieses Script sucht in allen IIS-Protokolldateien (IIS-, HTTPError- und UrlScan-Protokolldateien)

Mehr

Objective-C CheatSheet

Objective-C CheatSheet App-Templates: Erstellt automatisch einen Navigation Controller mit editierbarem UITableView und DetailView, der bei Klick auf einzelne UITableViewCell angezeigt wird. Kreiert einen GLKitViewController

Mehr

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: 1. Access Point im Personal Mode (WEP / WPA / WPA2) 1.1 Einleitung Im Folgenden wird die Konfiguration des Access Point Modus gezeigt. Zur Absicherung der Daten werden die verschiedenen Verschlüsselungsalgorithmen

Mehr

DBUS Interprozess-Kommunikation für Embedded-Plattformen

DBUS Interprozess-Kommunikation für Embedded-Plattformen DBUS Interprozess-Kommunikation für Embedded-Plattformen Andreas Schwarz Neratec Solutions AG Firmenprofil Neratec Solutions AG Produkt-Entwicklungen für kundenspezifische elektronische Produkte Produkte

Mehr

Robotino View Kommunikation mit OPC. Communication with OPC DE/EN 04/08

Robotino View Kommunikation mit OPC. Communication with OPC DE/EN 04/08 Robotino View Kommunikation mit OPC Robotino View Communication with OPC 1 DE/EN 04/08 Stand/Status: 04/2008 Autor/Author: Markus Bellenberg Festo Didactic GmbH & Co. KG, 73770 Denkendorf, Germany, 2008

Mehr

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH

Automatisierte Akzeptanztests für ios-apps. Sven Günther it-agile GmbH Automatisierte Akzeptanztests für ios-apps Sven Günther it-agile GmbH Wer entwickelt native Apps? Wer testet die Apps selbst? Wer hat externe Testdienstleister? Wer hat Unit-Tests? Wer hat Akzeptanztests?

Mehr

Agilo [1] ist ein auf Trac [2] basierendes Scrum [3] Tool. Im Folgenden soll eine kurze Überischt gegeben werden, wie Agilo benutzt wird.

Agilo [1] ist ein auf Trac [2] basierendes Scrum [3] Tool. Im Folgenden soll eine kurze Überischt gegeben werden, wie Agilo benutzt wird. AGILO HOWTO Agilo [1] ist ein auf Trac [2] basierendes Scrum [3] Tool. Im Folgenden soll eine kurze Überischt gegeben werden, wie Agilo benutzt wird. ROLLEN IM TEAM In Scrum hat jedes Teammitglied eine

Mehr

Connecting Android. Externe Hardware mit dem grünen Roboter verbinden. Alexander Dahmen Dominik Helleberg

Connecting Android. Externe Hardware mit dem grünen Roboter verbinden. Alexander Dahmen Dominik Helleberg Connecting Android Externe Hardware mit dem grünen Roboter verbinden Alexander Dahmen Dominik Helleberg Speaker Dominik Helleberg Mobile Development Android / Embedded Tools http://dominik-helleberg.de/+

Mehr

TomTom WEBFLEET Tachograph

TomTom WEBFLEET Tachograph TomTom WEBFLEET Tachograph Installation TG, 17.06.2013 Terms & Conditions Customers can sign-up for WEBFLEET Tachograph Management using the additional services form. Remote download Price: NAT: 9,90.-/EU:

Mehr

1.1 Media Gateway - SIP-Sicherheit verbessert

1.1 Media Gateway - SIP-Sicherheit verbessert Deutsch Read Me System Software 7.10.6 PATCH 2 Diese Version unserer Systemsoftware ist für die Gateways der Rxxx2- und der RTxxx2-Serie verfügbar. Beachten Sie, dass ggf. nicht alle hier beschriebenen

Mehr

a lot of, much und many

a lot of, much und many Aufgabe 1, und In bejahten Sätzen verwendest du für die deutschen Wörter viel und viele im Englischen Bsp.: I have got CDs. We have got milk. There are cars on the street. Bei verneinten Sätzen und Fragen

Mehr

ibeacons und BLE-Technologie

ibeacons und BLE-Technologie ibeacons und BLE-Technologie Beacons, oder auch ibeacons genannt, sind auf dem Vormarsch. Doch was kann dieses neue Location-Feature und welche Einsatzmöglichkeiten für Retail und Co. bietet es? Quelle:

Mehr

Long-term archiving of medical data new certified cloud-based solution offers high security and legally approved data management

Long-term archiving of medical data new certified cloud-based solution offers high security and legally approved data management Long-term archiving of medical data new certified cloud-based solution offers high security and legally approved data management The European Centre of Expertise for the Health Care Industry Langzeitarchivierung

Mehr

Abteilung Internationales CampusCenter

Abteilung Internationales CampusCenter Abteilung Internationales CampusCenter Instructions for the STiNE Online Enrollment Application for Exchange Students 1. Please go to www.uni-hamburg.de/online-bewerbung and click on Bewerberaccount anlegen

Mehr

Rückblick und nächste Schritte AutoMOT. Telco APG und Marktteilnehmer 26.01.2015

Rückblick und nächste Schritte AutoMOT. Telco APG und Marktteilnehmer 26.01.2015 Rückblick und nächste Schritte AutoMOT Telco APG und Marktteilnehmer 26.01.2015 Agenda TOP 1: Rückblick auf die operative Umsetzung und die betriebliche Erfahrung TOP 2: IT-technische Spezifikation Elemente

Mehr

Programmieren II. Timer. Vorlesung 11. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011. Timer. Sockets.

Programmieren II. Timer. Vorlesung 11. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester 2011. Timer. Sockets. Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 26 Timer Sockets SMTP-Client 2 / 26 Timer Mit einem Timer können bestimmte Aktionen periodisch wiederkehrend durchgeführt

Mehr

TVHD800x0. Port-Weiterleitung. Version 1.1

TVHD800x0. Port-Weiterleitung. Version 1.1 TVHD800x0 Port-Weiterleitung Version 1.1 Inhalt: 1. Übersicht der Ports 2. Ein- / Umstellung der Ports 3. Sonstige Hinweise Haftungsausschluss Diese Bedienungsanleitung wurde mit größter Sorgfalt erstellt.

Mehr

Beispiel droidremoteppt

Beispiel 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

Mehr

How to access licensed products from providers who are already operating productively in. General Information... 2. Shibboleth login...

How to access licensed products from providers who are already operating productively in. General Information... 2. Shibboleth login... Shibboleth Tutorial How to access licensed products from providers who are already operating productively in the SWITCHaai federation. General Information... 2 Shibboleth login... 2 Separate registration

Mehr

Installation MySQL Replikationsserver 5.6.12

Installation MySQL Replikationsserver 5.6.12 Ergänzen Konfigurationsdatei my.ini auf Master-Server:!!! softgate gmbh!!! Master und Slave binary logging format - mixed recommended binlog_format = ROW Enabling this option causes the master to write

Mehr

EEX Kundeninformation 2009-06-04

EEX Kundeninformation 2009-06-04 EEX Kundeninformation 2009-06-04 Änderungen bei der sstellung für die monatlichen Börsentransaktionsentgelte Sehr geehrte Damen und Herren, seit Anfang des Jahres vereinheitlichen wir in mehreren Stufen

Mehr

Programmentwicklung ohne BlueJ

Programmentwicklung ohne BlueJ Objektorientierte Programmierung in - Eine praxisnahe Einführung mit Bluej Programmentwicklung BlueJ 1.0 Ein BlueJ-Projekt Ein BlueJ-Projekt ist der Inhalt eines Verzeichnisses. das Projektname heißt wie

Mehr

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum

ANDROID. 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

Mehr

Service Design. Dirk Hemmerden - Appseleration GmbH. Mittwoch, 18. September 13

Service Design. Dirk Hemmerden - Appseleration GmbH. Mittwoch, 18. September 13 Service Design Dirk Hemmerden - Appseleration GmbH An increasing number of customers is tied in a mobile eco-system Hardware Advertising Software Devices Operating System Apps and App Stores Payment and

Mehr

English. Deutsch. niwis consulting gmbh (https://www.niwis.com), manual NSEPEM Version 1.0

English. Deutsch. niwis consulting gmbh (https://www.niwis.com), manual NSEPEM Version 1.0 English Deutsch English After a configuration change in the windows registry, you have to restart the service. Requirements: Windows XP, Windows 7, SEP 12.1x With the default settings an event is triggered

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

Nach Ihrer erstmaligen Anmeldung sollten Sie Ihr Passwort ändern. Dazu klicken Sie bitte auf Ihren Namen.

Nach Ihrer erstmaligen Anmeldung sollten Sie Ihr Passwort ändern. Dazu klicken Sie bitte auf Ihren Namen. 1 Passwort ändern Nach Ihrer erstmaligen Anmeldung sollten Sie Ihr Passwort ändern Dazu klicken Sie bitte auf Ihren Namen Abb 1-1 Erstmaliger Anmeldung Danach erscheint ein PopUp indem Sie Ihr Passwort

Mehr

PocketCinema A100 W WiFi Connection Guide. PocketCinema A100W. WiFi Connection Guide. for Local version: 12718. Page 1

PocketCinema A100 W WiFi Connection Guide. PocketCinema A100W. WiFi Connection Guide. for Local version: 12718. Page 1 PocketCinema A100W WiFi Connection Guide for Local version: 12718 Page 1 1. Apple AirPlay Mode (peer to peer) a. Turn on the A100W and wait until the SSID & Password information is shown on the top of

Mehr

Cassandra Query Language (CQL)

Cassandra Query Language (CQL) Cassandra Query Language (CQL) Seminar: NoSQL Wintersemester 2013/2014 Cassandra Zwischenpräsentation 1 Gliederung Basic facts Datentypen DDL/DML ähnlich zu SQL Besonderheiten Basic facts CQL kurz für

Mehr

Infrastructure as a Service (IaaS) Solutions for Online Game Service Provision

Infrastructure as a Service (IaaS) Solutions for Online Game Service Provision Infrastructure as a Service (IaaS) Solutions for Online Game Service Provision Zielsetzung: System Verwendung von Cloud-Systemen für das Hosting von online Spielen (IaaS) Reservieren/Buchen von Resources

Mehr

Employment and Salary Verification in the Internet (PA-PA-US)

Employment and Salary Verification in the Internet (PA-PA-US) Employment and Salary Verification in the Internet (PA-PA-US) HELP.PYUS Release 4.6C Employment and Salary Verification in the Internet (PA-PA-US SAP AG Copyright Copyright 2001 SAP AG. Alle Rechte vorbehalten.

Mehr

Konzept zur Push Notification/GCM für das LP System (vormals BDS System)

Konzept zur Push Notification/GCM für das LP System (vormals BDS System) Konzept zur Push Notification/GCM für das LP System (vormals BDS System) Wir Push Autor: Michael Fritzsch Version: 1.0 Stand: 04. Februar 2015 Inhalt 1. Was ist eine Push Notification? 2. Wofür steht GCM?

Mehr

Integration von KS-Hostmonitor in itop

Integration von KS-Hostmonitor in itop Integration von KS-Hostmonitor in itop Itop ist ein Konfigurationsmanagement und Ticketsystem von combodo (www.combodo.com) KS Advanced Hostmonitor ist ein Netzwerkmonitoring Tool von KS-Soft (www.ks-soft.net)

Mehr

Exercise (Part II) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1

Exercise (Part II) Anastasia Mochalova, Lehrstuhl für ABWL und Wirtschaftsinformatik, Kath. Universität Eichstätt-Ingolstadt 1 Exercise (Part II) Notes: The exercise is based on Microsoft Dynamics CRM Online. For all screenshots: Copyright Microsoft Corporation. The sign ## is you personal number to be used in all exercises. All

Mehr

UM ALLE DATEN ZU KOPIEREN. ZUNÄCHST die Daten des alten Telefons auf einen Computer kopieren

UM ALLE DATEN ZU KOPIEREN. ZUNÄCHST die Daten des alten Telefons auf einen Computer kopieren LUMIA mit WP8 IPHONE Daten des alten Telefons auf einen Computer kopieren Software von welcomehome.to/nokia auf Ihrem PC oder Mac. verbinden Sie Ihr altes Telefon über 3. Wenn Sie Outlook nutzen, öffnen

Mehr

Content Strategy for Mobile

Content Strategy for Mobile Content Strategy for Mobile Maik Derek Schneitler Responsive Webdesigner Büro für kreative Zusammenarbeit B User = Wir Es gibt keine Content Strategy für Mobile. Wir brauchen: Eine Strategie für alles.

Mehr

1.1. Apache 2.0.48 / Tomcat 4.1.27 via JK2 2.0.4 JNI ## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED

1.1. Apache 2.0.48 / Tomcat 4.1.27 via JK2 2.0.4 JNI ## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED by Peter Rossbach, Michael Kloss 1. Apache / Tomcat via JNI Peter Roßbach und Michael Kloss Um den Tomcat mit dem Apache zu kombinieren gibt es mehrere Möglichkeiten. Man kann dies über eine mod_proxy

Mehr

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Asset Management in Second Life

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Asset Management in Second Life Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen Vorlesung im Sommersemester 2007 an der Technischen Universität Ilmenau von Privatdozent Dr.-Ing. habil. Jürgen

Mehr

CDE-13xBT & CDE-W235BT & CDA-137BTi

CDE-13xBT & CDE-W235BT & CDA-137BTi Bluetooth Software Update Manual mit Windows 7 Für Geräte aus dem Modelljahr 2012 CDE-13xBT & CDE-W235BT & CDA-137BTi 1 Einleitung In der Anleitung wird die Vorgehensweise zum aktualisieren der Radio Bluetooth

Mehr

iphone developer conference Die Entwickler- und Buiness- Konferenz für iphone, ipad und ipod touch

iphone developer conference Die Entwickler- und Buiness- Konferenz für iphone, ipad und ipod touch iphone developer conference Die Entwickler- und Buiness- Konferenz für iphone, ipad und ipod touch ios - Wo steht es, wie geht es? Markus Stäuble MRM Worldwide GmbH 1 Feedback #ipdc10 #as 2 Agenda 3 Heute:

Mehr

Sepiola Mockups. Overview. Show notes. Primäre Navigation anklicken um zum gewünschten Mockups zu gehen. Backup usage. Overview.

Sepiola Mockups. Overview. Show notes. Primäre Navigation anklicken um zum gewünschten Mockups zu gehen. Backup usage. Overview. Show notes usage Incremental s Free 35% 30% 35% 711 MB 598 MB 739 MB Quota: 2 GB change quota under Settings schedule Last s Successfull Tuesday, 19.3.09 12:16 Successfull Wednesday, 19.3.09 12:25 Successfull

Mehr

Patentrelevante Aspekte der GPLv2/LGPLv2

Patentrelevante Aspekte der GPLv2/LGPLv2 Patentrelevante Aspekte der GPLv2/LGPLv2 von RA Dr. Till Jaeger OSADL Seminar on Software Patents and Open Source Licensing, Berlin, 6./7. November 2008 Agenda 1. Regelungen der GPLv2 zu Patenten 2. Implizite

Mehr

Kap. 7 IS-Infrastruktur: Zusammenfassung

Kap. 7 IS-Infrastruktur: Zusammenfassung Kapitel 7: Zusammenfassung Teil I. 1 Kap. 7 IS-Infrastruktur: Zusammenfassung In Teil I haben wir verschiedene Middleware-Lösungen zur Entwicklung (komplexer), verteilter Informationssysteme kennengelernt

Mehr

Oracle und.net sind ein populäres Gespann. Doch wie lassen sich Oracle Features mit.net nutzen?

Oracle und.net sind ein populäres Gespann. Doch wie lassen sich Oracle Features mit.net nutzen? Betrifft Autor Oracle und.net im n-tier Umfeld Urs Meier (urs.meier@trivadis.com) Art der Info Technical Info (April 2003) Quelle Aus unserer Projekterfahrung Einführung Oracle und.net sind ein populäres

Mehr

Softwareprojekt Mobilkommunikation Abschlusspräsentation. SP Mobilkommunikation (SS09) - Abschlusspräsentation 16.7.2009 1

Softwareprojekt Mobilkommunikation Abschlusspräsentation. SP Mobilkommunikation (SS09) - Abschlusspräsentation 16.7.2009 1 Softwareprojekt Mobilkommunikation Abschlusspräsentation SP Mobilkommunikation (SS09) - Abschlusspräsentation 16.7.2009 1 Overview Introduction / Background (by L. AiQuan) Mobile Phones, Android, Use Cases,...

Mehr

Algorithms for graph visualization

Algorithms for graph visualization Algorithms for graph visualization Project - Orthogonal Grid Layout with Small Area W INTER SEMESTER 2013/2014 Martin No llenburg KIT Universita t des Landes Baden-Wu rttemberg und nationales Forschungszentrum

Mehr

Anhang A - Weitere Bibliotheken. Die Bibliothek Mail_02.lib ermöglicht das Versenden von Emails mit dem Ethernet-Controller 750-842.

Anhang A - Weitere Bibliotheken. Die Bibliothek Mail_02.lib ermöglicht das Versenden von Emails mit dem Ethernet-Controller 750-842. Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Bibliothek Mail_02.lib Die Bibliothek Mail_02.lib ermöglicht das Versenden von Emails mit dem Ethernet-Controller 750-842. Inhalt Mail_02.lib 3 MAIL_SmtpClient...

Mehr

REQUEST FOR YOUR MEDICAL SECOND OPINION REPORT ANTRAG AUF IHR MEDIZINISCHES ZWEITE MEINUNG - GUTACHTEN

REQUEST FOR YOUR MEDICAL SECOND OPINION REPORT ANTRAG AUF IHR MEDIZINISCHES ZWEITE MEINUNG - GUTACHTEN REQUEST FOR YOUR MEDICAL SECOND OPINION REPORT ANTRAG AUF IHR MEDIZINISCHES ZWEITE MEINUNG - GUTACHTEN SECOND OPINION REPORT ZWEITE MEINUNG GUTACHTEN netto Euro brutto Euro medical report of a medical

Mehr

Bayerisches Landesamt für Statistik und Datenverarbeitung Rechenzentrum Süd. z/os Requirements 95. z/os Guide in Lahnstein 13.

Bayerisches Landesamt für Statistik und Datenverarbeitung Rechenzentrum Süd. z/os Requirements 95. z/os Guide in Lahnstein 13. z/os Requirements 95. z/os Guide in Lahnstein 13. März 2009 0 1) LOGROTATE in z/os USS 2) KERBEROS (KRB5) in DFS/SMB 3) GSE Requirements System 1 Requirement Details Description Benefit Time Limit Impact

Mehr

Daten haben wir reichlich! 25.04.14 The unbelievable Machine Company 1

Daten haben wir reichlich! 25.04.14 The unbelievable Machine Company 1 Daten haben wir reichlich! 25.04.14 The unbelievable Machine Company 1 2.800.000.000.000.000.000.000 Bytes Daten im Jahr 2012* * Wenn jedes Byte einem Buchstaben entspricht und wir 1000 Buchstaben auf

Mehr

Load balancing Router with / mit DMZ

Load balancing Router with / mit DMZ ALL7000 Load balancing Router with / mit DMZ Deutsch Seite 3 English Page 10 ALL7000 Quick Installation Guide / Express Setup ALL7000 Quick Installation Guide / Express Setup - 2 - Hardware Beschreibung

Mehr

EEX Kundeninformation 2002-08-30

EEX Kundeninformation 2002-08-30 EEX Kundeninformation 2002-08-30 Terminmarkt - Eurex Release 6.0; Versand der Simulations-Kits Kit-Versand: Am Freitag, 30. August 2002, versendet Eurex nach Handelsschluss die Simulations -Kits für Eurex

Mehr

Technical Support Information No. 123 Revision 2 June 2008

Technical Support Information No. 123 Revision 2 June 2008 I IA Sensors and Communication - Process Analytics - Karlsruhe, Germany Page 6 of 10 Out Baking Of The MicroSAM Analytical Modules Preparatory Works The pre-adjustments and the following operations are

Mehr

RS-232 SERIAL EXPRESS CARD 1-PORT. Expansion 111829

RS-232 SERIAL EXPRESS CARD 1-PORT. Expansion 111829 RS-232 SERIAL EXPRESS CARD 1-PORT Expansion 111829 1. Introduction equip RS-232 Serial Express Card works with various types of RS-232 serial devices including modems, switches, PDAs, label printers, bar

Mehr

Mac Desktop Entwicklung

Mac Desktop Entwicklung headquarter Mac Desktop Entwicklung Phillipp Bertram DEVELOPER DAY 20vierzehn http://www.admiralmarkets.com/images/mtmac/metatrader4-for-mac-os.png 2 "There is no reason for any individual to have a computer

Mehr

Frequently asked Questions for Kaercher Citrix (apps.kaercher.com)

Frequently asked Questions for Kaercher Citrix (apps.kaercher.com) Frequently asked Questions for Kaercher Citrix (apps.kaercher.com) Inhalt Content Citrix-Anmeldung Login to Citrix Was bedeutet PIN und Token (bei Anmeldungen aus dem Internet)? What does PIN and Token

Mehr

Ingenics Project Portal

Ingenics Project Portal Version: 00; Status: E Seite: 1/6 This document is drawn to show the functions of the project portal developed by Ingenics AG. To use the portal enter the following URL in your Browser: https://projectportal.ingenics.de

Mehr

TomC@ - Development: Tipps und Tricks

TomC@ - Development: Tipps und Tricks TomC@ - Development: Tipps und Tricks by Peter Rossbach, Michael Kloss, Lars Roewekamp 1. Tomcat Basics 1.1. Catalina-Base Um möglichst unabhängig von den Tomcat-Releases zu bleiben, bietet es sich an

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

Installation und Benutzung AD.NAV.ZipTools

Installation und Benutzung AD.NAV.ZipTools Installation und Benutzung AD.NAV.ZipTools Version 1.0.0.0 ALTENBRAND Datentechnik GmbH Am Gelicht 5 35279 Neustadt (Hessen) Tel: 06692/202 290 Fax: 06692/204 741 email: support@altenbrand.de Die Komponente

Mehr

Projektumfeld und Projektziele analysieren

Projektumfeld und Projektziele analysieren Projektumfeld und Projektziele analysieren Compendio: Kapitel 4, Seiten 60-77 07.06.2013 SWE-IPM 1 Inhalt Wechselwirkungen zwischen Projekt und Projektumfeld Stakeholderanalyse / Einfluss-Interessen-Matrix

Mehr

Realtime Anbindung an SAP ERP

Realtime Anbindung an SAP ERP Realtime Anbindung an SAP ERP 14.07.2014, 15:00 NovaTec Consulting GmbH Leinfelden-Echterdingen, München, Frankfurt am Main, Berlin, Jeddah / Saudi-Arabien Showcase - Push SAP Terminauftrag NovaTec 09.09.2015

Mehr

Technisches Handbuch Login für ios & Android

Technisches Handbuch Login für ios & Android Technisches Handbuch Login für ios & Android Version 15.1 Juli 2015 Inhaltsverzeichnis 1 Der DocCheck App Login...................................... 3 1.1 Basic App Login Der Klassiker für Apps......................

Mehr

Bes 10 Für ios und Android

Bes 10 Für ios und Android Bes 10 Für ios und Android Architektur einer nicht Container (Sandbox) basierenden MDM Lösung Simple & Secure ios & Android Management mit 10.1.1 Secure Workspace - Sicherer Container für ios und Android

Mehr

SmartClass Firmware-Update Vorgehensweise

SmartClass Firmware-Update Vorgehensweise Benutzeranweisungen SmartClass Firmware-Update Vorgehensweise 2008.01 (V 1.x.x) Deutsch Please direct all enquiries to your local JDSU sales company. The addresses can be found at: www.jdsu.com/tm-contacts

Mehr

The AppStore Economy. Peter Steinberger Freelance ios Developer http://petersteinberger.com. Reduced Version - Image Rights...

The AppStore Economy. Peter Steinberger Freelance ios Developer http://petersteinberger.com. Reduced Version - Image Rights... The AppStore Economy Peter Steinberger Freelance ios Developer http://petersteinberger.com Reduced Version - Image Rights... - seit 2009 im business Freelancer für diverse Apps von Hutchison, ORF, Pharmabranche

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

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

Sind Cloud Apps der nächste Hype?

Sind Cloud Apps der nächste Hype? Java Forum Stuttgart 2012 Sind Cloud Apps der nächste Hype? Tillmann Schall Stuttgart, 5. Juli 2012 : Agenda Was sind Cloud Apps? Einordnung / Vergleich mit bestehenden Cloud Konzepten Live Demo Aufbau

Mehr

Upgrade Notes 9 Social Edition. Stefan Dötsch, Consultant Collaboration Management

Upgrade Notes 9 Social Edition. Stefan Dötsch, Consultant Collaboration Management Upgrade Notes 9 Social Edition Stefan Dötsch, Consultant Collaboration Management Agenda 1. Domino Upgrade 2. Notes Upgrade 3. Roadmap Notes/Domino 03.04.2014 2 System Anforderungen http://www-01.ibm.com/support/docview.wss?uid=swg27007909

Mehr