Kapitel 1 Hello iphone

Größe: px
Ab Seite anzeigen:

Download "Kapitel 1 Hello iphone"

Transkript

1 Kapitel 1 Hello iphone»am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen.«douglas Adams Was gibt es Schöneres als Erfolg? Das gilt im Fußball ebenso wie beim Lernen. Mit Hilfe dieses Buches lernen Sie, Apps für ios zu programmieren. Der Weg dahin ist nicht immer geradlinig, manchmal steinig; es gibt Tage, da hat man das Gefühl, nur auf der Stelle zu treten, und an anderen geht es in rasendem Tempo bergauf, dem Ziel entgegen. Auf jeden Fall braucht es etwas Geduld, bis man sich bis zu den Feinheiten durchgearbeitet hat und mehr als eine, aus Standardkomponenten bestehende App programmieren kann. Damit Ihnen der Weg lohnenswert erscheint und Sie nicht direkt zu Beginn von Theorie erschlagen werden, beginnen wir dieses Buch mit der Programmierung einer kleinen App. Die dabei auftretenden Begriffe erläutern wir in diesem Kapitel nur kurz, da es hier um die Praxis geht; dieses Kapitel zeigt Ihnen, wie Sie die für die Programmierung notwendige Arbeitsumgebung einrichten, Sie damit eine kleine App erstellen und diese anschließend auf einem iphone oder ipad zur Ausführung gelangt. iphone, ipad und ipod touch Das iphone besitzt einen kleinen Bruder, den ipod touch. Dieser ipod sieht dem iphone sehr ähnlich, ist aber flacher und verfügt über keine Mobilfunk-Funktionalität. Das Betriebssystem des ipod touch ist dasselbe wie das des iphones, also ios. Daher kann ein für das iphone geschriebenes Programm in der Regel auch auf einem ipod touch laufen. Bei der ios-programmierung gibt es fast keine Unterschiede mehr zwischen iphone und ipod touch. Der Übersichtlichkeit halber ist hier aber nur vom iphone die Rede, was bis auf sehr wenige Ausnahmen auch den ipod touch einschließt. Dasselbe gilt auch für das ipad. Stellen, an denen Besonderheiten bei der Programmierung für das ipad zu beachten sind, sind entsprechend gekennzeichnet. Für den Rest des Textes gebrauchen wir»iphone«,»ipod«und»ipad«synonym. 23

2 1 Hello iphone 1.1 Voraussetzungen 1.1 Voraussetzungen Um Apps für ios programmieren zu können, benötigen Sie zwingend zwei Dinge: einen Apple-Computer mit Intel-Prozessor und einer möglichst aktuellen Version von OS X, also Mavericks (10.9) oder Yosemite (10.10), und das Software Development Kit (SDK) für ios. Das SDK enthält alle notwendigen Programme und Komponenten für die App-Entwicklung; die aktuelle Version hat die Nummer 6 und läuft nur unter Mavericks und Yosemite. Obwohl Apple ältere Versionen von OS X noch länger pflegt, laufen aktuelle Versionen der SDKs und anderer Programme von Apple häufig nur jeweils auf der aktuellsten Version. Der Druck ist sanft aber bestimmt: für die neueste Version von Xcode braucht man die neueste Version von OS X Das SDK und die Entwicklerprogramme Das SDK enthält neben einer integrierten Entwicklungsumgebung (IDE 1 ) namens Xcode zahlreiche grafische Tools, mit denen die Entwicklung von ios-applikationen leicht von der Hand geht, sowie die notwendigen Bibliotheken. Mit dem SDK können Sie Apps für ios und Programme für OS X erstellen. Sie können allerdings aus dem Stand heraus keine Apps auf einem Endgerät testen. Dafür müssen Sie erst Mitglied im Apple Developer Network werden und für das ios Developer Program bezahlt haben. Für zurzeit 80 EUR pro Jahr bekommen Sie dort 2 ein Zertifikat, mit dem Sie eigene Applikationen signieren und diese auf bis zu 100 ios-geräte aufspielen können. Die Teilnahme am ios Developer Program ist überdies die Voraussetzung dafür, Apps in den itunes Store 3 einstellen zu können. Das ios Developer Program existiert in zwei Ausprägungen: Individual und Company. Die Company-Version unterscheidet sich von der Individual-Version durch die Fähigkeit, Entwicklerteams zu verwalten, bietet dem einzelnen Programmierer jedoch keine weiteren Vorteile. Die Mitgliedschaft im ios Enterprise Program, die 279 jährlich kostet, ermöglicht die Installation selbstgeschriebener Apps auf mehr als 100 eigenen Geräten. Mit diesem Programm können Sie wiederum keine Apps in den Apple App Store hochladen. Das ios Enterprise Program ist nur für Firmen gedacht, die hausinterne Apps entwickeln möchten. Für private oder selbständige Entwickler sowie kleine Firmen ist dieses Programm daher in der Regel eher uninteressant. Sowohl für das Enterprise Programm als auch für das Company Developer Programm ist eine D-U-N-S-Nummer 4 erforderlich. Nutzer aus dem akademischen Bereich können am kostenlosen ios University Program teilnehmen, das zwar den Test von selbstgeschriebenen Apps auf Endgeräten erlaubt, aber keine Veröffentlichung im Apple App Store. Hilfe von Apple inklusive Bei allen kostenpflichtigen Programmen sind zwei Supportanfragen pro Jahr beim technischen Entwicklersupport von Apple enthalten. Sie können sich damit von Apple also bei der Entwicklung Ihrer Programme individuell unterstützen lassen, wenn Sie auf Probleme stoßen. Weitere Supportanfragen können Sie als Mitglied im Entwicklerprogramm kostenpflichtig erwerben. Außerdem haben Sie Zugriff auf die Entwicklerforen, in denen sich auch die Entwickler von Apple tummeln. Abbildung 1.1 Xcode zum Download im Mac App Store Sie können das SDK als Bestandteil des Programms Xcode kostenlos über das Programm App Store auf Ihren Mac herunterladen. Besondere Anforderungen an den Mac gibt es nicht. Wenn Yosemite drauf läuft, ist er ohnehin so gut motorisiert, dass Xcode kein Problem machen wird. 1 Integrated Development Environment 2 https://developer.apple.com/devcenter/ios 3 Häufig auch kurz als»app Store«bezeichnet

3 1 Hello iphone 1.1 Voraussetzungen Falls Sie nicht die aktuelle Version des SDK verwenden möchten oder können, stehen Ihnen nach der Anmeldung im ios Developer Center unter der URL https://developer.apple.com/ downloads/index.action auch ältere SDK-Versionen zum Download zur Verfügung. Benutzer, die noch nicht mit Yosemite arbeiten, können dort auch noch eine Version für Mavericks oder Mountain Lion laden. An dieser Stelle aber die Warnung: Apple schneidet bekanntermaßen gern, häufig und unvermittelt alte Zöpfe ab. Verlassen Sie sich also nicht darauf, dass Apple Yosemite auch in Zukunft mit neuen SDKs versorgt. Aktualisieren Sie im Zweifelsfall also lieber auf OS X 10.10, sofern das möglich ist; damit haben Sie immer Zugriff auf die neueste SDK-Version. Voraussetzungen für dieses Buch Um die in diesem Buch gezeigten Beispiele nachzuprogrammieren, reicht das SDK ohne die kostenpflichtige Registrierung als Entwickler aus. Alle Beispiele laufen zumindest mit Einschränkungen im Simulator. Eine detaillierte Beschreibung von Xcode finden Sie in Kapitel 10,»Jahrmarkt der Nützlichkeiten«. Eine so umfangreiche IDE will erkundet und an die eigene Arbeitsweise angepasst sein. Für den Einstieg genügt es allerdings vollkommen, wenn Sie den Anweisungen folgen, die bei den Beispielen in diesem Buch stehen. Sie erklären alle Schritte ausführlich, verständlich und reproduzierbar, ohne dass Sie sich zunächst tiefer in Xcode einarbeiten müssen. Abbildung 1.2 Der iphone-simulator Der Simulator Das SDK bringt einen iphone- und ipad-simulator mit. Dieser simuliert wie der Name bereits vermuten lässt das betreffende Endgerät. Dabei greift er auf die Ressourcen des Host- Computers, also Ihres Mac-Rechners, zurück. Mit dem ios-simulator können Sie die meisten Funktionen eines ios-gerätes nachstellen. Die Geo-Lokalisierung funktioniert nur auf Rechnern mit Airport; allerdings lässt sich im Simulator auch ein künstlicher Aufenthaltsort festlegen. Die Kamera, der Bewegungssensor und Mobilfunk funktionieren im Simulator jedoch nicht. Hierfür müssen Sie eine App immer erst auf einem durch das ios Developer Program entsprechend freigeschalteten Gerät installieren. Das Dateisystem des Simulators, das er über das Dateisystem Ihres Macs abbildet, verhält sich etwas anders als das eines echten ios-gerätes, und auch zentrale Ressourcen wie Adressbuch, Kalender und Keychain sind im Detail unterschiedlich. Der Simulator ist daher gut geeignet, um Grundfunktionalitäten zu prüfen Testläufe auf echten Geräten ersetzt er hingegen nicht. Auch wenn Ihre App im Simulator perfekt laufen sollte, kommen Sie niemals um Tests auf mindestens einem Gerät herum, wenn Sie Ihre App für andere Benutzer veröffentlichen möchten. Hier ist eine wahrscheinlich unvollständige Liste mit Gründen: Ein ios-gerät hat eine andere Architektur als der Simulator beziehungsweise der Mac. Das fängt schon mit unterschiedlichen Prozessorfamilien an, deren Befehlssätze vollkommen unterschiedlich sind. Die Geschwindigkeit Ihrer App kann auf beiden Systemen stark variieren. Ein Programm, das im Simulator flüssig läuft, kann auf einem ipod quälend langsam dahinkriechen. Ihr Mac hat vermutlich wesentlich mehr Hauptspeicher zur Verfügung als die 1 GB eines aktuellen iphones oder ipads. Während die App im Simulator stabil läuft, gibt sie auf dem Gerät möglicherweise am laufenden Band Speicherwarnungen aus. Die Dateisysteme sind verschieden aufgebaut, und Sie können viele Verzeichnisse unter ios nicht lesen, geschweige denn schreiben. Das betrifft besonders das Ressourcenverzeichnis einer App, in das Sie auf dem iphone nicht schreiben können, im Simulator hingegen schon. Der Simulator unterstützt nicht alle Hardware-Eigenschaften. Sie können keine Fotos mit der Kamera schießen, und es gibt keinen Beschleunigungs- oder Gyrosensor

4 1 Hello iphone 1.1 Voraussetzungen Tipp Bevor Sie Ihre App in den App Store hochladen, sollten Sie sie ausführlich auf echten Geräten testen am besten auf jedem Gerätetyp, den Ihre App unterstützt. Hierbei erweisen sich gerade ältere Modelle als besonders wertvolle Testgeräte. Sie sind in der Regel langsamer und haben weniger Arbeitsspeicher, so dass auf diesen Geräten entsprechende Programmfehler wesentlich häufiger auftreten. Wenn Ihre App kompatibel mit älteren ios-versionen sein soll, sollten Sie sie auf einem Gerät mit jeweils diesen Betriebssystemversionen testen. Dadurch finden Sie inkompatiblen Code am zuverlässigsten. Sie können grundsätzlich so gut wie alle alten ios-versionen unterstützen, das ergibt aber wirtschaftlich wenig Sinn. Stand Oktober 2014 waren nur noch 6 % aller ios-geräte weltweit mit einer ios-version ausgestattet, die kleiner als 7.0 ist. Es empfiehlt sich daher, mindestens ios 7.0 als Deployment-Target festzulegen und in der Programmierung all die vielen Annehmlichkeiten zu nutzen, die ios 7 mitgebracht hat. Überdies bietet Xcode 6 ohnehin nur noch die Installation des Simulators für ios 7 an und keine älteren. Sie können zwar»zu Fuß«noch ältere Simulatoren installieren, aber das ergibt häufig wenig Sinn. Beim ersten Start von Xcode weist das Programm Sie gegebenenfalls an, weitere Bestandteile zu installieren. Bestätigen Sie die Aufforderung einfach mit Install; eine Wahl haben Sie ohnehin nicht. Xcode unterwegs Da Sie neben der Xcode-Installation aus dem App Store auch noch gegebenenfalls Zusatzpakete (Simulatoren) nebst Offline-Dokumentation nachladen müssen, sollten Sie vor der Verwendung von Xcode auf Reisen oder an Orten ohne Internetzugang vorher gut prüfen, ob wirklich alle für Ihre Arbeit notwendigen Komponenten bereits installiert sind. Es ist zu ärgerlich, im Flieger freudestrahlend das MacBook aufzuklappen, um mit Xcode zu arbeiten, nur um dann festzustellen, dass Sie dafür noch einige hundert Megabyte an Daten installieren müssen Test der Arbeitsumgebung Xcode hat eine eigene Versionsnummerierung, deren aktuelle Version 6 ist. Seit Version 4.3 befindet sich die Entwicklungsumgebung mit allen Komponenten im Programme-Ordner, wohin der App Store auch alle anderen Applikationen installiert. Ziehen Sie das Xcode-Symbol am besten ins Dock, denn Sie werden das Programm im Laufe dieses Buches vermutlich häufiger verwenden, und starten Sie es anschließend. Xcode begrüßt Sie mit folgendem Startfenster: Abbildung 1.4 Unterstützung für ältere ios-versionen Abbildung 1.3 Das Startfenster von Xcode Unter der Rubrik Documentation im selben Fenster können Sie die Entwicklerdokumentation herunterladen. Erstellen Sie, um die Lauffähigkeit Ihrer Entwicklungsumgebung zu prüfen, über das Auswahlfeld Create a new Xcode project oder das Menü File New New Project ein neues Projekt. Im nächsten Fenster wählen Sie in der linken Auswahlspalte in der Gruppe ios den Punkt Application und rechts im Übersichtsfenster das Icon Single View Application

5 1 Hello iphone 1.1 Voraussetzungen Für den Company Identifier verwenden Sie in der Regel den vollqualifizierten Domainnamen in umgedrehter Schreibweise der Organisation, der das Projekt gehört. Beispielsweise gehört das Projekt in Abbildung 1.6 der Organisation Cocoaneheads mit der Domain cocoaneheads.de. Der dazugehörende Company-Identifier ist somit»de.cocoaneheads«. Aus Ihren Eingaben für die Felder Product Name und Company Identifier erzeugt Xcode die App-ID und zeigt sie unter Bundle Identifier an. Sie stellt eine eindeutige Kennung für die App dar, anhand derer ein ios-gerät die verschiedenen installierten Apps unterscheiden kann. Dabei ist die Verwendung des Domainnamens als Basis für den Company-Identifier eine einfache Möglichkeit, Namenskonflikte bei den Bundle-Identifiern verschiedener App- Hersteller zu vermeiden. Zusätzliche Einstellungen bei älteren Xcode-Versionen Abbildung 1.5 Ein neues ios-projekt Durch Auswahl des Buttons Next gelangen Sie zu dem in Abbildung 1.6 dargestellten Dialog. Im nächsten Schritt geben Sie Ihrem Projekt einen Namen. Hier können Sie zwar einen beliebigen Text eingeben, es empfiehlt sich jedoch, Leerzeichen und Sonderzeichen zu vermeiden. Idealerweise besteht der Name nur aus Buchstaben und Ziffern. In Xcode 4 können Sie in diesem Dialog zusätzlich den Speicherverwaltungstyp des Projekts, die Benutzung von Storyboards und das Anlegen eines Test-Targets festlegen. Falls Sie noch diese Xcode-Version verwenden, aktivieren Sie bitte die Optionen Automatic Reference Counting und Use Storyboards, damit Ihr Projekt in diesen Punkten dem Beispielprojekt entspricht. Abbildung 1.6 Namen für das Projekt festlegen Als Organization Name verwenden Sie den Namen der Organisation, Firma oder Person, die das Urheberrecht an den Quellen des Projekts besitzt, da Xcode diesen Wert in die Copyright-Angaben der Quelltexte einfügt. Ansonsten findet der Organisationsname keine Verwendung. Abbildung 1.7 Das Hauptfenster von Xcode 30 31

6 1 Hello iphone 1.2 App geht s Im letzten Schritt bestimmen Sie den Ordner, in dem Xcode das Projekt ablegen soll, und geben an, ob Xcode das Projekt unter eine eigene Git-Versionsverwaltung stellen soll. Bestätigen Sie die Auswahl eines geeigneten Speicherortes, und beenden Sie damit den Dialog. Es erscheint das Hauptfenster von Xcode mit den Projekteinstellungen (siehe Abbildung 1.7). Wählen Sie nun oben links im Xcode-Fenster das Ausführungsziel für das soeben erstellte Projekt aus z. B. iphone Retina (4-inch), und starten Sie anschließend mit dem Button Run, der links neben dem Auswahlfeld sitzt, oder mit der Tastenkombination (cmd)+(r) die Übersetzung des Projekts und die Ausführung im Simulator (siehe Abbildung 1.8). Abbildung 1.8 Auswahl des Ausführungsziels Abbildung 1.10 Das Testprojekt funktioniert. Xcode zeigt im Infobereich oben in der Mitte des Fensters den aktuellen Fortschritt an (siehe Abbildung 1.9) und startet anschließend das Projekt im iphone-simulator. Abbildung 1.9 Fortschrittsanzeige von Xcode Wenn Sie im Simulator eine langweilige, weiße Fläche wie in Abbildung 1.10 sehen, hat alles geklappt. Sie haben Xcode korrekt installiert, und das Übersetzen von Projekten funktioniert auch. Damit ist es für Sie an der Zeit, die erste App zu programmieren. 1.2 App geht s Die Werkbank ist eingerichtet, jetzt ist es an der Zeit für das erste richtige Projekt. Damit erhalten Sie einen Einblick in die Funktionsweise einer App. Sie sollen zunächst lernen, wie Sie eine App in Xcode erstellen, mit der ein Benutzer interagieren kann und die darüber hinaus noch etwas mehr macht, als das obligatorische»hallo Welt«auszugeben. Das folgende Beispielprojekt zeigt dem Benutzer einen Button an. Wenn er diesen drückt, ruft die App im Hintergrund die Daten aus dem Internet zu einer URL ab und zeigt den Inhalt der abgerufenen Seite an. Sie lernen dabei schon eine ganze Reihe wichtiger Grundbegriffe kennen

7 1 Hello iphone 1.2 App geht s Projektinformation Den Quellcode des folgenden Beispielprojekts finden Sie in den Materialien zum Buch (www.galileo-press.de/3653) im Ordner Code/Apps/iOS7/HelloiPhone oder im Github-Repository zum Buch im Unterverzeichnis Apps/iOS7/HelloiPhone. Sie können das Github-Repository über die URL https://github.com/cocoaneheads/iphone/tree/auflage_4 erreichen und dort den kompletten Inhalt in einer Zip-Datei laden. Wählen Sie im nächsten Schritt einen Speicherort für das Projekt aus, und öffnen Sie nach dem Erscheinen des Xcode-Hauptbildschirms durch einen einfachen Klick die Datei Main.storyboard 5, die Sie im Projektnavigator auf der linken Seite finden. Dieses Storyboard enthält die grafische Benutzerschnittstelle oder kurz GUI 6 Ihrer App (siehe Abbildung 1.12). Alternativ können Sie auch eine Arbeitskopie über die Anweisung git clone git://github. com/cocoaneheads/iphone.git erstellen. Falls Sie mit Git noch nicht vertraut sind, schlagen Sie in Kapitel 10,»Jahrmarkt der Nützlichkeiten«, nach; dort ist die Arbeit mit Git ausführlich erläutert. Außerdem zeigen wir Ihnen dort in einer detaillierten Anleitung, wie Sie das komplette Repository auschecken können Ein neues Projekt Um die Beispiel-App zu erstellen, erzeugen Sie in Xcode ein neues Projekt vom selben Typ wie im vorangegangenen Abschnitt (ios Single View Application). Bei der Konfiguration des Namens und der Projektparameter setzen Sie dieselben Angaben wie in Abbildung 1.11 gezeigt. Abbildung 1.12 Die grafische Benutzerschnittstelle der neuen App Da Sie beim Anlegen des Projekts eine App auf Basis eines einzelnen Views gewählt haben, hat Ihnen Xcode mit dem Storyboard bereits diesen View und einen Viewcontroller angelegt. Ein View ist ein Objekt, das etwas anzeigt, während ein Viewcontroller die Anzeige des Views steuert und dessen Eingaben (z. B. Antippen, Texteingaben, Tastendrücke) auswertet. Wählen Sie auf der großen Arbeitsfläche in der Mitte des Xcode-Fensters den View das ist das weiße Rechteck mit der Maus aus. Xcode hebt den View etwas hervor und zeigt links daneben den Viewcontroller mit einem gelben Icon und den View mit einem weißen Icon in einer Hierarchie an. Die Hierarchie befindet sich wiederum in einer Storyboard-Szene (siehe Abbildung 1.13). Ein Storyboard kann beliebig viele solcher Szenen enthalten. Abbildung 1.11 Projekteinstellungen für die Beispiel-App 5 In Xcode 4 heißt die Datei MainStoryboard.storyboard. 6 Graphical User Interface 34 35

8 1 Hello iphone 1.2 App geht s Abbildung 1.15 Die Objektbibliothek Abbildung 1.13 Eine Storyboard-Szene mit einem View Öffnen Sie nun auf der rechten Seite des Xcode-Fensters die Utilities-Ansicht, indem Sie in der Titelzeile auf den in Abbildung 1.14 gezeigten Button klicken. Abbildung 1.14 Öffnen des Utilities-Bereiches Abbildung 1.16 Label mit Beschreibung in der Objektbibliothek Unten rechts in der Utilities-Ansicht finden Sie die Objektbibliothek, indem Sie das Würfelsymbol auswählen (siehe Abbildung 1.15). Geben Sie in das Suchfeld ganz unten den Text»label«ein. Die Objektbibliothek zeigt Ihnen dann nur noch ein Objekt mit dem Namen Label an, und wenn Sie es anklicken, öffnet Xcode links daneben die entsprechende Beschreibung (siehe Abbildung 1.16). Ziehen Sie ein Label mit der Maus oben links in den View, so wie es Abbildung 1.17 zeigt. Im Zweifelsfall lassen Sie sich von den automatisch erscheinenden gestrichelten Hilfslinien inspirieren. Wenn Sie mit der Position zufrieden sind, lassen Sie das Label los, um es in den View einzufügen

9 1 Hello iphone 1.2 App geht s Danach setzen Sie die Textausrichtung des Labels im Attributinspektor auf zentriert (siehe Abbildung 1.19). Sie können den Attributinspektor öffnen, indem Sie das Label im View auswählen und die Tastenkombination (alt)+(cmd)+(4) drücken. Abbildung 1.19 Ausrichtung der Label-Beschriftung im Attributinspektor Suchen Sie anschließend in der Objektbibliothek nach»button«, und ziehen Sie das linke Objekt mit dem Namen Button (siehe Abbildung 1.20) ebenfalls auf den View. Ein Button zeigt eine Schaltfläche an, mit der die Nutzer eine Aktion in der App auslösen können. Abbildung 1.17 Platzieren eines Labels auf dem View Damit das Label auch ausreichend Platz für den anzuzeigenden Inhalt hat, fassen Sie mit der Maus den mittleren Begrenzungspunkt an der rechten Seite des Labels und ziehen ihn nach rechts, bis eine weitere Hilfslinie erscheint (siehe Abbildung 1.18). Abbildung 1.20 Buttons in der Objektbibliothek Abbildung 1.18 Größenänderung des Labels Um dem Button eine Beschriftung zu geben, führen Sie einen Doppelklick in dessen Beschriftung aus und geben dort den Text»Go!«ein. Nach Abschluss dieser Arbeiten verfügt 38 39

10 1 Hello iphone 1.2 App geht s Ihr View nun über ein Label und einen Button. Durch das Einfügen dieser Elemente haben Sie auch die Hierarchie in der Storyboard-Szene geändert. Auch dort finden Sie nun das Label und den Button. Den fertigen View und die neue Hierarchie sehen Sie in Abbildung Die in dieser Abbildung gezeigten blauen Rahmen um das Label und den Button können Sie über den Menüpunkt Editor Canvas Show Bounds Rectangles einschalten; sie zeigen Ihnen jeweils die genaue Position und Größe der Elemente an. Übersetzen und starten Sie die App im Simulator über den Run-Button von Xcode oder mit (cmd)+(r), wie Sie das bereits zum Testen Ihrer Xcode-Installation gemacht haben. Sie sehen anschließend den weißen View mit dem Label und dem Button (siehe Abbildung 1.22) im Simulator. Das Drücken des Buttons verändert zwar dessen Farbe, ansonsten tut sich aber nichts. Abbildung 1.22 Die App im Simulator Abbildung 1.21 Der View mit Label und Button Überdies sind Label und Button an den rechten Rand geschoben. Was daran liegt, dass die GUI im Interface-Builder für alle Gerätetypen voreingestellt ist. Sie müssen in Xcode noch festlegen, wo die beiden Elemente platziert werden sollen. Dazu dient das Autolayout. Öffnen Sie dazu noch einmal den Interface-Builder. Halten Sie die (cmd)-taste gedrückt und wählen mit gedrückter Taste das Label und den Button aus. Lassen Sie die (cmd)-taste los und wählen unten in der Xcode-Fußzeile den Button Align aus. Wählen Sie Horizontal Center in Container, belassen den Wert auf 0 und bestätigen Sie die Auswahl mit dem Button Add 2 Constraints

11 1 Hello iphone 1.2 App geht s der URL anzeigt. Dazu müssen Sie einige Zeilen Code programmieren und den Button und das Label mit diesem Code verbinden. Abbildung 1.24 Was nicht passt, wird passend gemacht Sehr verbunden Abbildung 1.23 Setzen Sie zwei Constraints, um Label und Button mittig zu platzieren. Übersetzen Sie die App anschließend mit (cmd)+(r) neu; die beiden Elemente befinden sich nun mittig in der GUI. Autolayout ist ein extrem mächtiges Feature, mit dem Sie unweigerlich in Kontakt kommen, wenn Sie für mehr als nur ein einziges Gerät programmieren. Mehr dazu erfahren Sie in den folgenden Kapiteln. Es fehlt jetzt noch die eigentliche Funktionalität der App, dass der Benutzer durch das Drücken des Buttons das Laden von Daten über eine URL auslöst und das Label dann den Inhalt Die Verbindung von Code-Editor und GUI-Editor in Xcode macht das Erstellen dieser Verbindungen extrem einfach. In älteren Xcode-Versionen war der GUI-Editor, der Interface-Builder, ein externes, separates Programm; mit Xcode 4 hat Apple alles zu einem Programm zusammengefasst. Beim Anlegen des Projekts hat Xcode bereits eine Klasse für den Viewcontroller erzeugt, die sich in die Dateien ViewController.h und ViewController.m aufteilt. Dateien mit der Endung.h heißen Header-Dateien und deklarieren verschiedene Programmierelemente. Im Gegensatz dazu heißen Dateien mit der Endung.m Implementierungsdateien. Sie enthalten den eigentlichen Programmcode. Die Header-Datei des Viewcontrollers beschreibt also, was diese Klasse kann, und die Implementierungsdatei beschreibt, wie sie es macht

12 1 Hello iphone 1.2 App geht s Der Viewcontroller beherbergt die Logik des Bespielprogramms. Dazu müssen Sie zwei Verbindungen zwischen der Benutzeroberfläche und der Klasse ViewController herstellen. Wählen Sie dazu die Datei Main.storyboard aus, und öffnen Sie anschließend über die Tastenkombination (alt)+(cmd)+( ) oder den betreffenden Button in der Titelleiste den Hilfs- beziehungsweise Assistant-Editor. Der Hilfseditor zeigt zu dem Haupteditor einen weiteren Editor an, dessen Inhalt in der Regel in einer Beziehung zu dem Inhalt des Haupteditors steht; beispielsweise zeigt er zu dem ausgewählten Viewcontroller im Storyboard den Quelltext der passenden Implementierungsdatei an. Abbildung 1.25 Öffnen des Assistant-Editors Der Hilfseditor besitzt am oberen Rand eine Sprungleiste (Jump Bar). Wenn Sie dort den Eintrag ViewController.m anklicken, erscheint ein Popup-Menü (Abbildung 1.26). Darin wählen Sie den Eintrag ViewController.h aus, so dass der Hilfseditor diese Datei anzeigt. Abbildung 1.27 Haupt- und Hilfseditor Abbildung 1.26 Die Sprungleiste im Hilfseditor Sie sollten nun im Haupteditor das Storyboard der App und im Hilfseditor den Inhalt der Datei ViewController.h sehen (siehe Abbildung 1.27). Sie können jetzt Verbindungen von Elementen aus dem Storyboard direkt in die Header- oder Implementierungsdatei ziehen und so die View-Elemente und Programmcode verbinden. Im vorliegenden Beispiel wollen wir das Label aus dem Code heraus ansprechen, um seinen Wert ändern zu können. Darüber hinaus soll das Drücken des Buttons eine Aktion auslösen. Ziehen Sie daher bei gedrückter (ctrl)-taste mit der Maus eine Verbindung vom Label in den Hilfseditor, und lassen Sie die Maustaste dort unterhalb der Zeile los, die mit dem beginnt (siehe Abbildung 1.28). Abbildung 1.28 Verbindung vom Label zur Deklaration erstellen Nach dem Loslassen erscheint der in Abbildung 1.29 gezeigte Pop-up-Dialog, in dem Sie die Art der anzulegenden Verbindung definieren. Eine Verbindung von einem View-Element zu einer Variablen nennt sich Outlet. Behalten Sie die Voreinstellungen bis auf den Namen bei, für den Sie im entsprechenden Feld den Text»label«eingeben. Klicken Sie anschließend auf Connect, um die Verbindung erstellen zu lassen

13 1 Hello iphone 1.2 App geht s Lassen Sie die Maustaste unter der Deklaration der Property los, und stellen Sie in dem sich öffnenden Pop-up-Dialog den Verbindungstyp unter Connection auf Action (siehe Abbildung 1.31). Als Namen verwenden Sie»go«, und anschließend bestätigen Sie die Einstellungen durch Drücken des Buttons Connect. Abbildung 1.29 Parameter für die Verbindung Xcode erzeugt anschließend in der Datei ViewController.h die folgende (weak, nonatomic) IBOutlet UILabel *label; Sie deklariert eine Property mit dem Namen label. Eine Property speichert eine Eigenschaft; in diesem Fall ist das ein Verweis auf das Label im View. Beim Button ist die umgekehrte Kommunikationsrichtung erforderlich: Das Drücken des Buttons soll eine Aktion im Viewcontroller ausführen. Ziehen Sie dafür ebenfalls bei gedrückter (ctrl)-taste eine Verbindung vom Button in den Hilfseditor unter die eben von Xcode erzeugte Zeile mit dem Outlet für das Label (siehe Abbildung 1.30). Abbildung 1.31 Erstellen einer Action-Verbindung Xcode legt dann in der Datei ViewController.h automatisch die folgende Zeile an: -(IBAction)go:(id)sender; Sie deklariert eine neue Methode namens go:. Methoden enthalten den eigentlichen Programmcode des Programms; sie beschreiben also, wie ein Programm etwas macht. Außerdem ergänzt Xcode die Datei ViewController.m um eine neue, leere Methodenimplementierung für die Methode go:, die Sie am Ende dieser Datei finden. Eine Methodenimplementierung sieht ihrer Deklaration sehr ähnlich, allerdings besitzt sie einen Implementierungsblock, den ein geschweiftes Klammerpaar begrenzt. In diesem Block steht der Programmcode der Methode, der ihre Funktionalität beschreibt. Der Block ist allerdings noch leer. -(IBAction)go:(id)sender { Wenn der Nutzer den Button in der App drückt, ruft die App diese Methode auf. Sie können das jetzt schon relativ einfach ausprobieren, indem Sie die Methode um eine Log-Anweisung erweitern, so dass die Datei ViewController.m die folgende Implementierung für die Methode go: enthält: -(IBAction)go:(id)sender { go:"); Listing 1.1 Die erste Implementierung einer Methode Abbildung 1.30 Eine Verbindung vom Button zum Code Durch den Aufruf der Funktion NSLog veranlassen Sie die App, die Zeichenkette [+] go: in die Konsole zu schreiben

14 1 Hello iphone 1.2 App geht s Übersetzen und starten Sie die App mit dem Run-Button oder über (cmd)+(r). Sobald der Simulator den View mit dem Label und dem Button anzeigt, betätigen Sie den Button in der App. Xcode öffnet automatisch am unteren Rand den Debug-Bereich, und darin erscheint die Zeichenkette mit einem davorstehenden Zeitstempel wie in Abbildung Das Drücken des Buttons führt also zum Aufruf der vorgesehenen Methode. if(theerror == nil) { IP: theip); else { Error: [theerror localizeddescription]); [self.label settext:theip]; Listing 1.3 Abfrage einer Webseite Abbildung 1.32 Die Log-Ausgabe im Debug-Bereich von Xcode Anstatt der Log-Ausgabe können Sie jedoch auch einen Text in der App anzeigen; Sie haben ja schließlich das Label mit dem zugehörigen Outlet angelegt. Fügen Sie dazu die in Listing 1.2 hervorgehobene Zeile in die Methodenimplementierung von go: ein. Dieser Code fragt den Inhalt der Webseite ab und sendet ihn an das Label in der Benutzeroberfläche der App. Die Methode erzeugt dafür zunächst eine URL und merkt sich dieses Objekt in der Variablen theurl. Danach holt sie sich über die Methode stringwithcontentsofurl:encoding:error: den Inhalt der Webseite. Dabei kann natürlich ein Fehler auftreten, weil beispielsweise die Webseite nicht verfügbar ist. Wenn ein Fehler auftritt, speichert die Methode diesen Wert in der Variablen theerror. -(IBAction)go:(id)sender { go:"); [self.label gedrückt"]; Listing 1.2 Die erste Implementierung einer Methode Wenn Sie nun die App im Simulator starten und den Button Go! drücken, ändert sich der Text des Labels von Label in Button gedrückt. Das bewirkt die neu eingefügte Zeile: Sie aktualisiert über die Methode settext: den angezeigten Text des Labels Netzwerk und Ausgabe Im nächsten Schritt erweitern Sie die Funktionalität der App um den Datenabruf. Dazu ändern Sie in der Datei ViewController.m die Methode go: wie folgt: -(IBAction)go:(id)sender { go:"); NSError *theerror = nil; NSURL *theurl = [NSURL NSString *theip = [NSString stringwithcontentsofurl:theurl encoding:nsasciistringencoding error:&theerror]; Abbildung 1.33 Es klappt die App zeigt die IP-Adresse an

15 1 Hello iphone 1.2 App geht s Nach der Abfrage erfolgt eine Fallunterscheidung: Entweder trat kein Fehler auf, dann zeigt die Methode den Inhalt der Webseite im Log an. Andernfalls macht sie das mit der Fehlermeldung. Die Unterscheidung erfolgt dabei anhand der Variablen theerror. Wenn diese keinen Fehler enthält, hat sie den Wert nil. Dieser Wert bedeutet, dass die Variable kein Objekt enthält. Zum Schluss aktualisiert die Methode noch die Anzeige des Labels mit dem gelesenen Inhalt der Webseite, der sich in der Variablen theip befindet. Stoßen Sie jetzt erneut über (cmd)+(r) die Übersetzung und den Start der App an. Sofern Ihr Rechner über eine Verbindung mit dem Internet verfügt, zeigt die App nach dem Drücken des Buttons Ihre externe IP-Adresse an (siehe Abbildung 1.33). Darüber hinaus gibt es Entitlements, mit denen Sie spezielle Berechtigungen für eine App vergeben können. Den Zugriff auf die icloud oder das Empfangen von Apple Push Notifications regeln beispielsweise Entitlements; dazu jedoch später mehr. Eine App ohne diese besonderen Anforderungen benötigt auch keine speziellen Entitlements. Sie können in Xcode zwar auch ohne gültiges Entwicklerzertifikat ein ios-gerät als Ziel auswählen, wie Abbildung 1.34 zeigt, das Ausführen des Projektes schlägt indes fehl (siehe Abbildung 1.35). Gratulation zu Ihrer ersten App! Allerdings gibt es an ihr noch eine Kleinigkeit zu verbessern: Nach dem Start steht der Text des Labels auf»label«. Das ist natürlich unschön. Um dies zu ändern, fügen Sie in der Datei ViewController.m über der go:-methode noch die folgende Methode hinzu: -(void)viewwillappear:(bool)inanimated { [super viewwillappear:inanimated]; viewwillappear:"); [self.label Listing 1.4 Setzen eines anderen Anfangstextes Sie setzt den initialen Wert des Labels auf»moin«. Wenn Sie die App jetzt erneut übersetzen und ausführen, zeigt das Label nach dem Start der App diesen Text an. Abbildung 1.34 Auswahl eines nicht näher spezifizierten ios-gerätes Test auf einem Gerät Wie wir in Abschnitt 1.1.1,»Das SDK und die Entwicklerprogramme«, erwähnt haben, benötigen Sie ein kostenpflichtiges Entwicklerzertifikat, um selbstprogrammierte Apps auf einem iphone installieren und ausführen zu können. ios führt zum Schutz vor Schadsoftware (und zur Wahrung von Apples Geschäftsmodell) ausschließlich Code aus, der mit einem von Apple ausgestellten, gültigen Zertifikat signiert ist. Dieses Verhalten nennt sich Mandatory Code Signing oder kurz Code Signing. Das Code Signing besteht aus vier Elementen. Das erste Element sind Zertifikate. Jede App muss ein von Apple ausgestelltes und signiertes Zertifikat besitzen, ansonsten verweigert der ios-kernel das Laden der App. Damit ein Gerät eine selbstgeschriebene und mit dem eigenen Entwicklerzertifikat signierte App als gültig akzeptiert, muss es ein passendes Provisioning Profile besitzen. Ein Provisioning Profile oder Bereitstellungsprofil verbindet das Entwicklerzertifikat mit einer App und einem Gerät, auf dem die App laufen soll. Abbildung 1.35 Ohne Moos nix los Entwicklerzertifikat und Entwicklungsprofile Um nach dem Abschluss einer kostenpflichtigen Mitgliedschaft als ios-entwickler ein Gerät für die Entwicklung nutzen zu können, richten Sie in Xcode als erstes Ihren Entwickler- Account ein. Dazu öffnen Sie die Einstellungen über Xcode Preferences Accounts und fügen dort Ihren Account ein

16 1 Hello iphone 1.2 App geht s Sie können das angeschlossene Gerät nun umgehend in Xcode als Target auswählen. Abbildung 1.36 Die Account-Einstellungen von Xcode Anschließend schließen Sie Ihr Testgerät an den Mac an, öffnen Xcode und darin den Organizer über den Menüpunkt Window Devices. Im Tab Devices sehen Sie links iphones und ipads, die Sie mit Xcode bereits verwendet haben und auch Ihr gerade angeschlossenes Gerät. Abbildung 1.38 Das Gerät als Target für das aktuelle Projekt Wenn Sie das frisch angeschlossene Gerät als Target auswählen und das Projekt starten, meldet Xcode, dass es keine gültige Identität für das Code Signing finden konnte. Wählen Sie die Option Fix Issue. Abbildung 1.39 Es fehlt noch das Entwicklerzertifikat. Xcode fragt, ob es den bereits eingerichteten Account verwenden soll. Bei mehreren in Xcode eingerichteten Accounts können Sie den gewünschten auswählen. Abbildung 1.37 Die Geräteübersicht von Xcode Abbildung 1.40 Der Entwickler-Account für den Test auf dem Gerät 52 53

17 1 Hello iphone 1.2 App geht s Anschließend erzeugt Xcode ein Entwicklerzertifikat samt privatem Schlüssel, den Sie zum Signieren der Apps benötigen, und hinterlegt beides im Schlüsselbund. in den Ordner, in dem sich Ihr Zertifikat befindet, und geben Sie dort den folgenden Befehl ein: openssl x509 -text -inform der -in ios_development.cer Das Ergebnis ist eine Darstellung der im Zertifikat gespeicherten Informationen wie in Abbildung Abbildung 1.41 Xcode erzeugt ein Zertifikat samt privatem Schlüssel. Nach Abschluss des Vorgangs führt Xcode das Projekt dann problemlos auf dem Gerät aus, solange Sie das Gerät nicht mit einem Code gesperrt haben; zum Testen müssen Sie das Gerät stets entsperren. Abbildung 1.42 Xcode umgeht nicht die Code-Sperre. Und das ist auch gut so. Das Entwicklerzertifikat sowie die Bereitstellungsprofile erhalten Sie nicht nur über Xcode, sondern auch im ios Provisioning Portal. Dieses finden Sie online, wenn Sie im ios Dev Center 7 rechts oben im Kasten ios Developer Program auf das Element ios Provisioning Portal klicken. Vorsicht mit dem Schlüsselbund! Ein Zertifikat besteht aus einem privaten Schlüssel, den Sie benötigen, um damit Operationen (wie z. B. das Signieren) durchzuführen. Das Zertifikat selbst ist der öffentliche Schlüssel, über den Dritte in diesem Fall der ios-kernel Ihres Entwicklungsgeräts Ihre Identität prüfen können. Den privaten Schlüssel zum Zertifikat legt Xcode bei der Erzeugung des Zertifikates im Schlüsselbund Ihres Rechners ab. Apple kennt diesen Schlüssel nicht und hat auch keine Sicherheitskopie. Das bedeutet, dass Sie gut auf Ihren Schlüsselbund und die darin enthaltenen Objekte achten müssen. Denn wenn Ihnen der private Schlüssel abhandenkommt, können Sie Ihr Zertifikat nicht mehr verwenden und müssen ein neues ausstellen. Wenn Sie das Zertifikat auf Ihren Mac herunterladen, können Sie sich mit dem bordeigenen OpenSSL-Paket die Details anschauen. Öffnen Sie dazu das Programm Terminal, wechseln Sie 7 https://developer.apple.com/devcenter/ios/index.action Abbildung 1.43 Das Entwicklerzertifikat in der Detailansicht Apps mit speziellen Funktionalitäten Jede App benötigt zur Ausführung eine App-ID. Das ist eine Kennung, für die die Berechtigungen einer App bei Apple hinterlegt sind. Vor Xcode 5 erfolgte die Konfiguration der App- IDs ausschließlich über das Entwicklerportal; analog zum Erstellen eines Entwicklerzertifikates können Sie dies nun bequem über Xcode erledigen. Öffnen Sie dazu das Capabilities-Tab in den Projekteinstellungen. Dort finden Sie alle Berechtigungen, die Sie einer App zuweisen können (siehe Abbildung 1.44)

18 1 Hello iphone 1.3 Zurück auf Los: Swift Wenn Sie den Button Choose drücken, legt Xcode gegebenenfalls im Entwicklerportal eine passende App-ID mit den dazugehörenden Berechtigungen an. Nach Abschluss der Kommunikation zwischen Xcode und dem Entwicklerportal aktiviert Xcode die betreffende Berechtigung. Abbildung 1.46 Aktivierung der Datenverschlüsselung App-IDs are forever Sie können im Entwicklerportal oder über Xcode beliebig viele App-IDs manuell anlegen. Nachdem Sie jedoch eine App-ID angelegt haben, lässt sie sich weder löschen noch verändern, und selbst eine Supportanfrage bei Apple hat wenig Erfolgschancen. Noch nicht einmal die Beschreibung können Sie anpassen. Sie sollten sich also vor dem Anlegen genau überlegen, ob Sie wirklich diese Kennung benötigen und welche Werte Sie dafür eingeben. Am besten legen Sie also eine neue App-ID im Portal erst an, wenn Sie sie auch tatsächlich benötigen. 1.3 Zurück auf Los: Swift Abbildung 1.44 Mögliche Berechtigungen für eine App Sie lernen im Laufe dieses Buches noch einige dieser Berechtigungen kennen. An dieser Stelle führen wir Ihnen vor, wie Sie einer App diese Berechtigungen hinzufügen. Dazu aktivieren Sie die betreffende Berechtigung über den korrespondierenden On/Off-Schalter auf der rechten Seite. Xcode fragt Sie anschließend nach dem für diesen Vorgang zu verwendenden Entwicklerkonto (siehe Abbildung 1.45). Abbildung 1.45 Das Entwicklerkonto für die Berechtigungsoperation Apple wäre nicht Apple, wenn es nicht alle Nase lang Neuerungen in der Produktpalette gäbe. Dies bezieht sich nicht nur auf neue Geräte und Software, sondern auch auf Neuerungen, die den Programmierer betreffen. An das jährliche Major-Update von ios und OS X und die damit einhergehende jährlich neue Xcode-Version konnte man sich als Entwickler nun seit 2010 gewöhnen. Doch Apple wäre eben auch nicht Apple, wenn ein vorgegebenes Muster über einen längeren Zeitraum ausreichend wäre. Zusätzlich zu den ohnehin in diesem Jahr mit ios 8 erschienenen Neuerungen, hat Apple im Juni 2014 auf der WWDC eine neue Programmiersprache angekündigt, Swift. Vermutlich jeder halbwegs erfahrene Objective-C-Programmierer musste nach der Ankündigung von Swift durch Craig Federighi (»Hair Force One«) auf der WWDC seinen Unterkiefer von der Tischplatte aufsammeln. Eine neue Programmiersprache, zudem eine, die die alten Zöpfe von C abschneidet und gleichzeitig mit vielen in Objective-C etablierten Paradigmen und Techniken bricht. Das Echo auf Swift unter den Entwicklern ist nach wie vor geteilt. Möchte man sich auf die Chancen kaprizieren, kann Swift das Zeug haben, die Zahl der Programmierer für ios und OS X signifikant zu vergrößern; ist doch der größte Nachteil an Objective-C die hohe Einstiegshürde durch die sprachspezifischen Besonderheiten. Hat man sich allerdings jahrelang mühsam genau diese Besonderheiten angeeignet, reibt man sich nun verwundert die Augen und findet in Swift Konstrukte wieder, über die man als Objective-C-Programmierer jahrelang nur müde gelächelt hat. Details zu Swift lernen Sie in Abschnitt 2.8,»Swift«, kennen

19 1 Hello iphone 1.3 Zurück auf Los: Swift Damit Sie einen Einblick in Swift erhalten, werden Sie im Folgenden die in Abschnitt 1.2,»App geht s«, in Objective-C programmierte App noch einmal bauen. Dieses Mal in Swift. Starten Sie Xcode und legen ein neues ios-projekt vom Typ Single View Application an. In dem darauf folgenden Dialog wählen Sie als Sprache allerdings nicht Objective-C, sondern Swift aus. Von diesen Unterschieden abgesehen, gehen Sie im Folgenden genauso vor wie in der Objective-C-Version; öffnen Sie also die Datei Main.storyboard im Interface-Builder und ebenda dann die Objektbibliothek. Ziehen Sie anschließend ein Label und einen Button auf den View, genauso wie in Abschnitt 1.2.1,»Ein neues Projekt«, beschrieben. Das Label passen Sie so an, dass es über die ganze View-Breite reicht. Wenn Sie danach den Assistant-Editor öffnen, sehen Sie in der Datei ViewController.swift, dass die Struktur zwar der aus der Objective-C-Version ähnelt, die Syntax aber eine ganz andere ist. Herzlich willkommen in Apples neuer Programmierwelt! Ziehen Sie vom Label ein Outlet»label«in die Datei ViewController.swift und vom Button eine Action»go«. Der Inhalt der Datei ist anschließend wie folgt: import UIKit Abbildung 1.47 Swift ist diese Mal die Sprache der Wahl. Nach Abschluss des Dialogs begrüßt Sie Xcode in derselben Ansicht wie beim ersten Durchlauf in Abschnitt 1.2.1,»Ein neues Projekt«. Wobei genau genommen zwei Änderungen festzustellen sind: Es gibt jeweils nur noch eine Datei AppDelegate und ViewController, und beide Dateien haben die Endung.swift. class ViewController: UIViewController weak var label: func go(sender: AnyObject) { override func viewdidload() { super.viewdidload() override func didreceivememorywarning() { super.didreceivememorywarning() Listing 1.5 Die Datei»ViewController.swift«nach Anlegen des Outlets und der Action Zunächst passen Sie die Datei ViewController.swift so an, dass die App nach dem Start dasselbe freundliche»moin«zeigt wie die Objective-C-Variante. Dazu erweitern Sie die Methode viewdidload() um die entsprechende eine Anweisung: override func viewdidload() { super.viewdidload() label.text = "Moin" Listing 1.6 Anzeige von»moin«beim Start der App Neben der ohnehin anderen Syntax gegenüber Objective-C fällt hier direkt auf, dass das Schlüsselwort self für den Zugriff auf die Property label nicht mehr notwendig ist. Abbildung 1.48 Der kleine, aber feine Unterschied Um jetzt noch die Funktion einzubauen, mit der das Drücken des Buttons zum Abruf der IP- Adresse führt, erweitern Sie die Action-Methode go um die folgenden Anweisungen: 58 59

20 1 Hello iphone 1.4 func go(sender: AnyObject) { let theurl = NSURL.URLWithString("http://www.rodewig.de/ip.php") var theip = NSString.stringWithContentsOfURL(theURL, encoding: NSUTF8StringEncoding, error: nil) label.text = theip Listing 1.7 Die Action-Methode»go«in Swift Führen Sie die App nun aus und drücken den Button. Wie geht es weiter mit Swift Swift ist eine sehr junge Programmiersprache. Die Entwickler bei Apple, die Swift erfunden und implementiert haben, arbeiten schon seit einigen Jahren an Swift. Öffentlich verfügbar ist Swift allerdings erst seit der WWDC im Juni Im September 2014 wurde die Version 1.0 veröffentlicht. Vieles an Swift ist noch nicht ganz ausgereift, was bei dem geringen Alter der Sprache nicht verwundert, und insbesondere die ios-bibliothek ist noch komplett auf Objective-C ausgerichtet, wenngleich aber mit Swift nutzbar. Die Vehemenz und Geschwindigkeit, mit der Apple Swift in den Markt drückt, deutet stark darauf hin, dass Swift keine Ergänzung, sondern der Nachfolger von Objective-C werden wird. Auch wenn Chris Lattner, der Erfinder von Swift, im Internet geäußert hat, dass es keinen Plan gibt, Objective-C durch Swift abzulösen, ist den meisten langjährigen Programmierern für ios und Mac klar, dass es genauso kommen wird. Apple ist erwiesenermaßen unglaublich rigoros, wenn es um das Ersetzen»alter«Technologien geht. Da die gesamte ios-bibliothek allerdings noch auf Objective-C angepasst ist und viele Konzepte in dieser Bibliothek sich gar nicht oder nur schlecht mit Swift vereinbaren lassen, wird noch eine Menge Wasser den Rhein herunterfließen, bis Apple Objective-C komplett rausschmeißen kann. Daher lautet unser Rat: Auch am Ende des Jahres 2014 sind Sie gut damit beraten, Objective-C zu lernen, wenn Sie die iphone-programmierung beherrschen möchten. Neue Apps können Sie getrost in Swift beginnen. Wenn Sie aber bestehende Projekte oder Bibliotheken Dritter verwenden möchten, werden Sie auf lange Zeit um Objective-C nicht herumkommen. 1.4 Zusammenfassung In diesem Kapitel haben Sie die ersten Schritte in der ios-programmierung getan. Sie haben erfolgreich das ios-sdk installiert und eine App programmiert, die über das übliche»hallo Welt«hinausgeht. Dabei haben wir detaillierte Erklärungen bewusst ausgespart, um Ihnen diese Schritte möglichst zu vereinfachen und Ihnen so die Leichtigkeit der ios-programmierung zu zeigen. Mit den Grundlagen macht das nächste Kapitel Sie ausgiebig vertraut. Sie sollten die folgenden Erkenntnisse aus dem vorangegangenen Beispiel behalten, denn die Erklärungen dazu geben Ihnen die folgenden Kapitel: Abbildung 1.49 Die App funktioniert. Sieht aber nicht gut aus. Label und Button auf der App-Oberfläche sind auch hier verrutscht. Um beide auszurichten, verfahren Sie, wie in Abschnitt beschrieben (»Autolayout«). Eine Klasse was das auch immer sein mag ist in zwei Dateien aufgeteilt (.h und.m). Dabei beschreibt die Header-Datei (.h), was eine Klasse kann, und die Implementierungsdatei (.m), wie sie es macht. Die Anweisungen,»etwas zu tun«, stehen in Methoden. Sie können Variablen und Methoden relativ einfach mit einem Element der Benutzeroberfläche verbinden

Leseprobe. »Hello iphonemodels, Layer, Animationen« Inhalt. Index. Die Autoren. Leseprobe weiterempfehlen. www.galileo-press.

Leseprobe. »Hello iphonemodels, Layer, Animationen« Inhalt. Index. Die Autoren. Leseprobe weiterempfehlen. www.galileo-press. Wissen, wie s geht. Leseprobe Machen Sie sich mit dem SDK und den Entwicklertools vertraut, und starten Sie ein neues Projekt. Anschließend erfahren Sie, wie Sie Models, Layer und Animationen einsetzen.

Mehr

Leseprobe. »Hello iphonemodels, Layer, Animationen« Inhaltsverzeichnis. Index. Die Autoren. Apps programmieren für iphone und ipad

Leseprobe. »Hello iphonemodels, Layer, Animationen« Inhaltsverzeichnis. Index. Die Autoren. Apps programmieren für iphone und ipad Wissen, wie s geht. Leseprobe Machen Sie sich mit dem SDK und den Entwicklertools vertraut, und starten Sie ein neues Projekt. Anschließend erfahren Sie, wie Sie Models, Layer und Animationen einsetzen.

Mehr

Kapitel 1 Hello iphone

Kapitel 1 Hello iphone Kapitel 1 Hello iphone 1»Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen.«douglas Adams Was gibt es Schöneres

Mehr

Glossar. Launching auf.

Glossar. Launching auf. 243 Ad Hoc Distribution Die Ad Hoc Distribution ist eine Möglichkeit, um Ihre entwickelte Anwendung auf anderen Endgeräten zu verteilen. Diese Art der Verteilung erfolgt ohne den App Store. Die Anzahl

Mehr

AK Medientechnologien 08 App Deployment. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/

AK Medientechnologien 08 App Deployment. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ AK Medientechnologien 08 App Deployment Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Allgemeines Personen (Zertifikate) Devices Apps Provisioning Profiles Deployment

Mehr

Schritt für Schritt Anleitung zum Erstellen einer Android-App zum Ein- und Ausschalten einer LED

Schritt für Schritt Anleitung zum Erstellen einer Android-App zum Ein- und Ausschalten einer LED Schritt für Schritt Anleitung zum Erstellen einer Android-App zum Ein- und Ausschalten einer LED Mit Google Chrome nach MIT App Inventor suchen. In den Suchergebnissen (siehe unten) auf

Mehr

Installationshandbuch

Installationshandbuch Installationshandbuch Erforderliche Konfiguration Installation und Aktivierung - 1 - Erforderliche Konfiguration Programme der 4D v15 Produktreihe benötigen folgende Mindestkonfiguration: Windows OS X

Mehr

Startup-Anleitung für Macintosh

Startup-Anleitung für Macintosh Intralinks VIA Version 2.0 Startup-Anleitung für Macintosh Intralinks-Support rund um die Uhr USA: +1 212 543 7800 GB: +44 (0) 20 7623 8500 Zu den internationalen Rufnummern siehe die Intralinks-Anmeldeseite

Mehr

MERLIN IPHONE. Der Schnelleinstieg ins mobile Projektmanagement. 2013 ProjectWizards GmbH, Melle, Germany. All rights reserved.

MERLIN IPHONE. Der Schnelleinstieg ins mobile Projektmanagement. 2013 ProjectWizards GmbH, Melle, Germany. All rights reserved. MERLIN IPHONE Der Schnelleinstieg ins mobile Projektmanagement. 2013 ProjectWizards GmbH, Melle, Germany. All rights reserved. EINFÜHRUNG Herzlich Willkommen zum Merlin ios Schnelleinstieg! Danke, dass

Mehr

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen

Mehr

Apple Train the Trainer 10 App Store Submission. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/

Apple Train the Trainer 10 App Store Submission. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Apple Train the Trainer 10 App Store Submission Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Allgemeines Provisioning Profiles Application Binary vorbereiten

Mehr

AK Medientechnologien Hello World. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/

AK Medientechnologien Hello World. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ AK Medientechnologien Hello World Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Demo-Applikation: Hello World Rückblick auf einzelne Schritte Entwicklungswerkzeuge

Mehr

Installationshandbuch

Installationshandbuch Installationshandbuch Erforderliche Konfiguration Installation und Aktivierung - 1 - Erforderliche Konfiguration Programme der 4D v15 Produktreihe benötigen folgende Mindestkonfiguration: Windows OS X

Mehr

Skyfillers Hosted SharePoint. Kundenhandbuch

Skyfillers Hosted SharePoint. Kundenhandbuch Skyfillers Hosted SharePoint Kundenhandbuch Kundenhandbuch Inhalt Generell... 2 Online Zugang SharePoint Seite... 2 Benutzerpasswort ändern... 2 Zugriff & Einrichtung... 3 Windows... 3 SharePoint als

Mehr

3.7 Horde-Kalender abonnieren

3.7 Horde-Kalender abonnieren 3.7 Horde-Kalender abonnieren Abbildung 70: Abonnement-Button in der Kalendersidebar Der Horde-Kalender lässt sich in anderen Programmen abonnieren. Somit bietet sich die Möglichkeit, Ihren Kalender in

Mehr

Starten der Software unter Windows 7

Starten der Software unter Windows 7 Starten der Software unter Windows 7 Im Folgenden wird Ihnen Schritt für Schritt erklärt, wie Sie Ihr persönliches CONTOUR NEXT USB auf dem Betriebssystem Ihrer Wahl starten und benutzen. Schritt 1. Stecken

Mehr

4 Die FrontPage-Website

4 Die FrontPage-Website 4 Die FrontPage-Website Ziele dieses Kapitels A Sie lernen die Struktur einer Website kennen. A Sie können Websites verschachteln. A Sie können Websites konvertieren. Microsoft Office Frontpage 2003 Einführung

Mehr

Leseprobe. Jan Tittel, Jochen Baumann. Apps für ios entwickeln. Am Beispiel einer realen App. ISBN (Buch): 978-3-446-43192-8

Leseprobe. Jan Tittel, Jochen Baumann. Apps für ios entwickeln. Am Beispiel einer realen App. ISBN (Buch): 978-3-446-43192-8 Leseprobe Jan Tittel, Jochen Baumann Apps für ios entwickeln Am Beispiel einer realen App ISBN (Buch): 978-3-446-43192-8 ISBN (E-Book): 978-3-446-43314-4 Weitere Informationen oder Bestellungen unter http://www.hanser-fachbuch.de/978-3-446-43192-8

Mehr

Ich programmier mir eine App

Ich programmier mir eine App Ich programmier mir eine App Erste Schritte Auf diesem Blatt wir eine App mit einer Maschine verglichen. Die Programmierung entspricht dann der Herstellung dieser Maschine in einer Werkstatt. In der linken

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

Einrichtung des NVS Calender-Google-Sync-Servers. Installation des NVS Calender-Google-Sync Servers (Bei Neuinstallation)

Einrichtung des NVS Calender-Google-Sync-Servers. Installation des NVS Calender-Google-Sync Servers (Bei Neuinstallation) Einrichtung des NVS Calender-Google-Sync-Servers Folgende Aktionen werden in dieser Dokumentation beschrieben und sind zur Installation und Konfiguration des NVS Calender-Google-Sync-Servers notwendig.

Mehr

Für Windows 7 Stand: 21.01.2013

Für Windows 7 Stand: 21.01.2013 Für Windows 7 Stand: 21.01.2013 1 Überblick Alle F.A.S.T. Messgeräte verfügen über dieselbe USB-Seriell Hardware, welche einen Com- Port zur Kommunikation im System zur Verfügung stellt. Daher kann bei

Mehr

Pydio - Installation für mobile Endgeräte

Pydio - Installation für mobile Endgeräte Pydio - Installation für mobile Endgeräte Pydio Pydio ist eine Open-Source Software für die Speicherung und den Zugriff von Daten auf einem eigenen Server. Dieser Dienst ist Ihre persönliche Cloud (vergleichbar

Mehr

Handbuch B4000+ Preset Manager

Handbuch B4000+ Preset Manager Handbuch B4000+ Preset Manager B4000+ authentic organ modeller Version 0.6 FERROFISH advanced audio applications Einleitung Mit der Software B4000+ Preset Manager können Sie Ihre in der B4000+ erstellten

Mehr

RÖK Typo3 Dokumentation

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

Mehr

APPS für ios 9 professionell entwickeln

APPS für ios 9 professionell entwickeln thomas SILLMANN 2. Auflage APPS für ios 9 professionell entwickeln // Sauberen Code schreiben mit Objective-C und Swift // Stabile Apps programmieren // Techniken und Methoden von Grund auf verstehen Inkl.

Mehr

Anleitung MRA Service mit MAC

Anleitung MRA Service mit MAC Anleitung MRA Service mit MAC Dokumentbezeichnung Anleitung MRA Service unter MAC Version 2 Ausgabedatum 7. September 2009 Anzahl Seiten 12 Eigentumsrechte Dieses Dokument ist Eigentum des Migros-Genossenschafts-Bund

Mehr

Installationshandbuch. Erforderliche Konfiguration Installation und Aktivierung

Installationshandbuch. Erforderliche Konfiguration Installation und Aktivierung Installationshandbuch Erforderliche Konfiguration Installation und Aktivierung Erforderliche Konfiguration Programme der 4D v12 Produktreihe benötigen folgende Mindestkonfiguration: Windows Mac OS Prozessor

Mehr

WufooConnector Handbuch für Daylite 4

WufooConnector Handbuch für Daylite 4 WufooConnector Handbuch für Daylite 4 WufooConnector Handbuch für Daylite 4 1 Allgemeines 1.1 Das WufooConnector Plugin für Daylite 4 4 2 Einrichtung 2.1 2.2 2.3 Installation 6 Lizensierung 8 API Key einrichten

Mehr

Hinweise zu Java auf dem Mac:

Hinweise zu Java auf dem Mac: Hinweise zu Java auf dem Mac: 1. Möglichkeit zum Überprüfen der Java-Installation / Version 2. Installiert, aber im Browser nicht AKTIVIERT 3. Einstellungen in der Java-KONSOLE auf Deinem MAC 4. Java Hilfe

Mehr

So ziehen Sie Ihr Wordpress Blog zu STRATO um

So ziehen Sie Ihr Wordpress Blog zu STRATO um So ziehen Sie Ihr Wordpress Blog zu STRATO um Version 1.0 So ziehen Sie Ihr Wordpress Blog zu STRATO um Das Wordpress-Plugin Duplicator ermöglicht Ihnen, in wenigen Schritten Ihre Wordpress-Instanz umzuziehen.

Mehr

Starten Sie das Shopinstallatonsprogramm und übertragen Sie alle Dateien

Starten Sie das Shopinstallatonsprogramm und übertragen Sie alle Dateien 3. Installation Ihres Shops im Internet / Kurzanleitung Kurzanleitung: Starten Sie das Shopinstallatonsprogramm und übertragen Sie alle Dateien Geben Sie während der Webbasierten Installationsroutine alle

Mehr

Anleitungen zum Publizieren Ihrer Homepage

Anleitungen zum Publizieren Ihrer Homepage Anleitungen zum Publizieren Ihrer Homepage Einrichtung und Konfiguration zum Veröffentlichen Ihrer Homepage mit einem Programm Ihrer Wahl Stand April 2008 Die Anleitungen gelten für die Homepage-Produkte:

Mehr

WICHTIG!: Speichern Sie die Backup Datei außerhalb Safe and itunes. Für weitere Infos schauen Sie bitte unter Safe Backup erstellen.

WICHTIG!: Speichern Sie die Backup Datei außerhalb Safe and itunes. Für weitere Infos schauen Sie bitte unter Safe Backup erstellen. Safe Anleitung Safe erlaubt Ihnen Ihre sensiblen Daten zu organisieren und zu speichern. Sie können beliebige Kategorien zur Organisation Ihrer Daten erstellen. Wir bieten Ihnen vordefinierte Vorlagen

Mehr

Informationszentrum Hochschule Karlsruhe. Anleitung Plotter

Informationszentrum Hochschule Karlsruhe. Anleitung Plotter Informationszentrum Hochschule Karlsruhe Anleitung Plotter Inhaltsverzeichnis 1 Einführung 3 1.1 Begriffe..................................... 3 1.1.1 Plotserver................................ 3 1.1.2

Mehr

Anleitung zur Pflege der Homepage über den Raiffeisen-Homepage-Manager

Anleitung zur Pflege der Homepage über den Raiffeisen-Homepage-Manager Anleitung zur Pflege der Homepage über den Raiffeisen-Homepage-Manager Homepage-Manager Navigation Home Der Homepage-Manager bietet die Möglichkeit im Startmenü unter dem Punkt Home einfach und schnell

Mehr

Apps für ios entwickeln

Apps für ios entwickeln Apps für ios entwickeln Am Beispiel einer realen App Bearbeitet von Jan Tittel, Jochen Baumann 1. Auflage 2013. Buch. XII, 222 S. ISBN 978 3 446 43192 8 Format (B x L): 17,9 x 24,7 cm Gewicht: 589 g Weitere

Mehr

tentoinfinity Apps 1.0 EINFÜHRUNG

tentoinfinity Apps 1.0 EINFÜHRUNG tentoinfinity Apps Una Hilfe Inhalt Copyright 2013-2015 von tentoinfinity Apps. Alle Rechte vorbehalten. Inhalt der online-hilfe wurde zuletzt aktualisiert am August 6, 2015. Zusätzlicher Support Ressourcen

Mehr

VPN-System Benutzerhandbuch

VPN-System Benutzerhandbuch VPN-System Benutzerhandbuch Inhalt Einleitung Antiviren-Software 5 Einsatzgebiete 6 Web Connect Navigationsleiste 8 Sitzungsdauer 9 Weblesezeichen 9 Junos Pulse VPN-Client Download Bereich 9 Navigationshilfe

Mehr

Innovator for Model Sketching. Kurzanleitung zu Installation und Benutzung

Innovator for Model Sketching. Kurzanleitung zu Installation und Benutzung Kurzanleitung zu Installation und Benutzung Inhaltsverzeichnis Installation... 3 Systemvoraussetzungen... 3 Innovator for Model Sketching herunterladen... 3 Innovator for Model Sketching einrichten...

Mehr

Securepoint Security Systems

Securepoint Security Systems HowTo: Virtuelle Maschine in VMware für eine Securepoint Firewall einrichten Securepoint Security Systems Version 2007nx Release 3 Inhalt 1 VMware Server Console installieren... 4 2 VMware Server Console

Mehr

Comic Life 2.x. Fortbildung zum Mediencurriculum

Comic Life 2.x. Fortbildung zum Mediencurriculum Comic Life 2.x Fortbildung zum Mediencurriculum - 1 - Comic Life Eine kurze Einführung in die Bedienung von Comic Life 2.x. - 2 - Starten von Comic Life Bitte starte das Programm Comic Life. Es befindet

Mehr

iphone-kontakte zu Exchange übertragen

iphone-kontakte zu Exchange übertragen iphone-kontakte zu Exchange übertragen Übertragen von iphone-kontakten in ein Exchange Postfach Zunächst muss das iphone an den Rechner, an dem es üblicherweise synchronisiert wird, angeschlossen werden.

Mehr

Cmsbox Kurzanleitung. Das Wichtigste in Kürze

Cmsbox Kurzanleitung. Das Wichtigste in Kürze Cmsbox Kurzanleitung Cmsbox Kurzanleitung Das Wichtigste in Kürze Die Benutzeroberfläche der cmsbox ist nahtlos in die Webseite integriert. Elemente wie Texte, Links oder Bilder werden direkt an Ort und

Mehr

Fiery Driver Configurator

Fiery Driver Configurator 2015 Electronics For Imaging, Inc. Die in dieser Veröffentlichung enthaltenen Informationen werden durch den Inhalt des Dokuments Rechtliche Hinweise für dieses Produkt abgedeckt. 16. November 2015 Inhalt

Mehr

Mac Quick Guide für die Migration zum HIN Client

Mac Quick Guide für die Migration zum HIN Client Mac Quick Guide für die Migration zum HIN Client Anleitung zur Migration vom ASAS Client zum neuen HIN Client in Schritten:. Schritt 2. Schritt. Schritt Installation HIN Client Software Installiert die

Mehr

SIHLNET E-Mail-Konfiguration

SIHLNET E-Mail-Konfiguration SIHLNET E-Mail-Konfiguration Inhaltsverzeichnis 1. Allgemeines...2 2. OWA...2 2.1. Anmeldung... 2 2.2. Arbeiten mit OWA... 3 2.2.1. Neue E-Mail versenden... 3 2.2.2. E-Mail beantworten / weiterleiten...

Mehr

Anleitung App CHARLY Foto

Anleitung App CHARLY Foto Anleitung App CHARLY Foto Version 1.0.0 Wichtige Informationen: Für einen fehlerfreien Betrieb der App CHARLY Foto halten Sie sich bitte an nachfolgende Installationsanweisungen. 2 Inhalt Einleitung 3

Mehr

Vorbereitungen zum SIMOTION Webserver Tutorial Anwenderdefinierte Webseiten

Vorbereitungen zum SIMOTION Webserver Tutorial Anwenderdefinierte Webseiten SIMOTION Tutorials Vorbereitungen zum SIMOTION Webserver Tutorial Anwenderdefinierte Webseiten siemens.com/answers SIMOTION- 2 Webserver aktivieren 3 Demo-Variablen hinzufügen 4 Web-Editor 6 Web- 10 SIMOTION

Mehr

Psi unter Microsoft Windows benutzen

Psi unter Microsoft Windows benutzen Psi unter Microsoft Windows benutzen Andreas Stöcker Juni 2008 Installation Auf der Webseite http://psi-im.org/ kann das Programm für Windows heruntergeladen werden. Doppelklicken Sie auf die setup- Datei,

Mehr

Anleitungen zum Publizieren Ihrer Homepage

Anleitungen zum Publizieren Ihrer Homepage Anleitungen zum Publizieren Ihrer Homepage Einrichtung und Konfiguration zum Veröffentlichen Ihrer Homepage mit einem Programm Ihrer Wahl Stand Februar 2015 Die Anleitungen gelten für die Homepage-Produkte:

Mehr

Psi unter Mac OS X benutzen

Psi unter Mac OS X benutzen Psi unter Mac OS X benutzen Andreas Stöcker Juni 2008 Installation Auf der Webseite http://psi-im.org/ kann das Programm für Mac OS X heruntergeladen werden. Um das Programm zu erhalten, muss die heruntergeladene

Mehr

Tutorium Learning by doing WS 2001/ 02 Technische Universität Berlin. Erstellen der Homepage incl. Verlinken in Word 2000

Tutorium Learning by doing WS 2001/ 02 Technische Universität Berlin. Erstellen der Homepage incl. Verlinken in Word 2000 Erstellen der Homepage incl. Verlinken in Word 2000 1. Ordner für die Homepagematerialien auf dem Desktop anlegen, in dem alle Bilder, Seiten, Materialien abgespeichert werden! Befehl: Desktop Rechte Maustaste

Mehr

TYPO3 Redaktoren-Handbuch

TYPO3 Redaktoren-Handbuch TYPO3 Redaktoren-Handbuch Kontakt & Support: rdv interactive ag Arbonerstrasse 6 9300 Wittenbach Tel. 071 / 577 55 55 www.rdvi.ch Seite 1 von 38 Login http://213.196.148.40/typo3 Username: siehe Liste

Mehr

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt.

Python Installation. 1 Vorbereitung. 1.1 Download. Diese Anleitung ist für Windows ausgelegt. Python Installation 1 Vorbereitung Diese Anleitung ist für Windows ausgelegt. 1.1 Download Python kann online unter https://www.python.org/downloads/ heruntergeladen werden. Hinweis: Im CoderDojo verwenden

Mehr

Bedienung von BlueJ. Klassenanzeige

Bedienung von BlueJ. Klassenanzeige Im Folgenden werden wichtige Funktionen für den Einsatz von BlueJ im Unterricht beschrieben. Hierbei wird auf den Umgang mit Projekten, Klassen und Objekten eingegangen. Abgeschlossen wird dieses Dokument

Mehr

Installationsleitfaden kabelsafe storage mit FileZilla Client Programm

Installationsleitfaden kabelsafe storage mit FileZilla Client Programm Installationsleitfaden kabelsafe storage mit FileZilla Client Programm Installationsanleitung kabelsafe storage unter Verwendung des kostenlos unter verschiedenen Betriebssystemplattformen (Windows, Apple

Mehr

Infoblatt BROWSER TIPSS. Mozilla Firefox & Internet Explorer. 2012, netzpepper

Infoblatt BROWSER TIPSS. Mozilla Firefox & Internet Explorer. 2012, netzpepper Infoblatt BROWSER TIPSS Mozilla Firefox & Internet Explorer 2012, netzpepper Alle Rechte vorbehalten. Nachdruck oder Vervielfältigung auch auszugsweise nur mit schriftlicher Genehmigung des Autors. Stand:

Mehr

Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X

Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X SwissMacMeeting #1 26. Juni 2004 Messeturm Basel http://mac.naepflin.com Was ist das Ziel dieses Kurses? Starthilfe Einblick in die Möglichkeiten,

Mehr

Die Dateiablage Der Weg zur Dateiablage

Die Dateiablage Der Weg zur Dateiablage Die Dateiablage In Ihrem Privatbereich haben Sie die Möglichkeit, Dateien verschiedener Formate abzulegen, zu sortieren, zu archivieren und in andere Dateiablagen der Plattform zu kopieren. In den Gruppen

Mehr

MEMO_MINUTES. Update der grandma2 via USB. Paderborn, 29.06.2012 Kontakt: tech.support@malighting.com

MEMO_MINUTES. Update der grandma2 via USB. Paderborn, 29.06.2012 Kontakt: tech.support@malighting.com MEMO_MINUTES Paderborn, 29.06.2012 Kontakt: tech.support@malighting.com Update der grandma2 via USB Dieses Dokument soll Ihnen helfen, Ihre grandma2 Konsole, grandma2 replay unit oder MA NPU (Network Processing

Mehr

Einrichtung Mac OS X Mail IMAP

Einrichtung Mac OS X Mail IMAP Einrichtung Mac OS X Mail IMAP Fachhochschule Eberswalde IT-Servicezentrum Erstellt im Mai 2009 www.fh-eberswalde.de/itsz Die folgende Anleitung beschreibt die Einrichtung eines E-Mail-Kontos über IMAP

Mehr

Installationsanweisung JavaHelp

Installationsanweisung JavaHelp Systemvoraussetzungen schaffen 1 Installationsanweisung JavaHelp für Viele Hilfe-Autoren haben jedoch Probleme, JavaHelp in einer gut funktionierenden Weise lauffähig zu bekommen, zumal versionsspezifische

Mehr

Starten der Software unter Windows XP

Starten der Software unter Windows XP Starten der Software unter Windows XP Im Folgenden wird Ihnen Schritt für Schritt erklärt, wie Sie Ihr persönliches CONTOUR NEXT USB auf dem Betriebssystem Ihrer Wahl starten und benutzen. Schritt 1. Stecken

Mehr

KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE

KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung...Seite 03 2. Zugriff auf Cloud Object Storage mit Cyberduck...Seite 04 3. Neuen Container

Mehr

Grid Player für ios Version 1.1

Grid Player für ios Version 1.1 Grid Player für ios Version 1.1 Sensory Software International Ltd 2011 Grid Player Grid Player ist eine App für die Unterstützte Kommunikation (UK), welche Menschen unterstützt, die sich nicht oder nur

Mehr

1. Sobald Sie mit der Maus über die Navigationszeile Ihrer Homepage fahren, erscheint ein Button Navigation bearbeiten.

1. Sobald Sie mit der Maus über die Navigationszeile Ihrer Homepage fahren, erscheint ein Button Navigation bearbeiten. Anwendungsbeispiel Wir über uns Seite erstellen In diesem Anwendungsbeispiel wird zunächst eine Übersichtstabelle zu allen Mitarbeitern Ihres Büros erstellt. Hinter jeder Person ist dann eine neue Seite

Mehr

H A E S S L E R. DoRIS Office Add-In. DoRIS Baustein für die Integration von MS Office in DoRIS. Installation & Anleitung

H A E S S L E R. DoRIS Office Add-In. DoRIS Baustein für die Integration von MS Office in DoRIS. Installation & Anleitung H A E S S L E R DoRIS Office Add-In DoRIS Baustein für die Integration von MS Office in DoRIS Installation & Anleitung DoRIS Office Add-In. DoRIS Baustein für die Integration von MS Office in DoRIS Installation

Mehr

Durchführung eines Upgrades von Windows 7 auf Windows 8

Durchführung eines Upgrades von Windows 7 auf Windows 8 Durchführung eines Upgrades von Windows 7 auf Windows 8 Stand: August 2012 CSL-Computer GmbH & Co. KG Sokelantstraße 35 30165 Hannover Telefon: 05 11-76 900 100 Fax 05 11-76 900 199 shop@csl-computer.com

Mehr

Einführung in Automation Studio

Einführung in Automation Studio Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in

Mehr

FlowFact Alle Versionen

FlowFact Alle Versionen Training FlowFact Alle Versionen Stand: 29.09.2005 Brief schreiben, ablegen, ändern Die FlowFact Word-Einbindung macht es möglich, direkt von FlowFact heraus Dokumente zu erzeugen, die automatisch über

Mehr

Anwendertreffen 20./21. Juni

Anwendertreffen 20./21. Juni Anwendertreffen Forum Windows Vista Warum Windows Vista? Windows Vista wird in relativ kurzer Zeit Windows XP als häufigstes Betriebssystem ablösen. Neue Rechner werden (fast) nur noch mit Windows Vista

Mehr

Photoalben anlegen und verwalten.

Photoalben anlegen und verwalten. ClubWebMan GKMB Gallery Photoalben anlegen und verwalten. geeignet für TYPO Version.5 bis.6 Die Arbeitsschritte A. Upload der Bilder in die Dateiliste B. Bilder beschriften und sortieren B. Album im Ordner

Mehr

DPS App Zertifikate für ios

DPS App Zertifikate für ios Apple Developer Account Das Apple Developer Center unter http://developer.apple.com Apple Xcode Installation unter https://developer.apple.com/xcode/ ios Dev Center - Login Login in das ios Developer Center

Mehr

Import des persönlichen Zertifikats in Outlook2007

Import des persönlichen Zertifikats in Outlook2007 Import des persönlichen Zertifikats in Outlook2007 1. Installation des persönlichen Zertifikats 1.1 Voraussetzungen Damit Sie das persönliche Zertifikat auf Ihren PC installieren können, benötigen Sie:

Mehr

Inhalt. meliarts. 1. Allgemeine Informationen... 2 2. Administration... 2 2.1 Aufruf... 2 2.2 Das Kontextmenü... 3 3. E-Mail Vorlagen...

Inhalt. meliarts. 1. Allgemeine Informationen... 2 2. Administration... 2 2.1 Aufruf... 2 2.2 Das Kontextmenü... 3 3. E-Mail Vorlagen... Inhalt 1. Allgemeine Informationen... 2 2. Administration... 2 2.1 Aufruf... 2 2.2 Das Kontextmenü... 3 3. E-Mail Vorlagen... 4 Seite 1 von 7 meliarts 1. Allgemeine Informationen meliarts ist eine Implementierung

Mehr

myavr Klassendiagramm der UML mit SiSy-AVR Schnelleinstieg für myavr Board MK3

myavr Klassendiagramm der UML mit SiSy-AVR Schnelleinstieg für myavr Board MK3 myavr Klassendiagramm der UML mit SiSy-AVR Schnelleinstieg für myavr Board MK3 Zielstellung Dieser Schnelleinstieg demonstriert das Arbeiten mit dem Klassendiagramm in SiSy AVR mit der Bibliothek für das

Mehr

HILFE Datei. UPC Online Backup

HILFE Datei. UPC Online Backup HILFE Datei UPC Online Backup Inhalt Login Screen......? Welcome Screen:......? Manage Files Screen:...? Fotoalbum Screen:.........? Online backup Client Screen...? Frequently Asked Questions (FAQ s)...?

Mehr

VB.net Programmierung und Beispielprogramm für GSV

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

Mehr

1. Schnellkurs Android-Tablet den Startbildschirm individuell anpassen und optimal nutzen

1. Schnellkurs Android-Tablet den Startbildschirm individuell anpassen und optimal nutzen . Schnellkurs Android-Tablet den Startbildschirm individuell anpassen und optimal nutzen Android-Tablets lassen sich sprichwörtlich mit dem richtigen Fingerspitzengefühl steuern. Das Grundprinzip von Tippen,

Mehr

@HERZOvision.de. Kurzanleitung WebClient. v 1.0.0 by Herzo Media GmbH & Co. KG - www.herzomedia.de

@HERZOvision.de. Kurzanleitung WebClient. v 1.0.0 by Herzo Media GmbH & Co. KG - www.herzomedia.de @HERZOvision.de Kurzanleitung WebClient v 1.0.0 by Herzo Media GmbH & Co. KG - www.herzomedia.de Inhaltsverzeichnis Inhaltsverzeichnis... 2 E-Mails direkt im Browser bearbeiten... 3 Einführung in den WebClient

Mehr

Installation KVV Webservices

Installation KVV Webservices Installation KVV Webservices Voraussetzung: KVV SQL-Version ist installiert und konfiguriert. Eine Beschreibung dazu finden Sie unter http://www.assekura.info/kvv-sql-installation.pdf Seite 1 von 20 Inhaltsverzeichnis

Mehr

Bedienungsanleitung für das IT Center Webhosting

Bedienungsanleitung für das IT Center Webhosting Bedienungsanleitung für das IT Center Webhosting 1) Allgemeines... 2 2) Anlegen von E-Mail Adressen... 2 3) Einrichten der E-Mail Konten in Outlook Express und Mozilla Thunderbird... 5 a) Outlook Express

Mehr

Handbuch TweetMeetsMage

Handbuch TweetMeetsMage Handbuch TweetMeetsMage für Version 0.1.0 Handbuch Version 0.1 Zuletzt geändert 21.01.2012 Inhaltsverzeichnis 1 Einleitung... 3 1.1 Voraussetzungen... 3 1.2 Funktionsübersicht... 3 2 Installation... 4

Mehr

Anleitung für TYPO3... 1. Bevor Sie beginnen... 2. Newsletter anlegen... 2. Inhalt platzieren und bearbeiten... 3. Neuen Inhalt anlegen...

Anleitung für TYPO3... 1. Bevor Sie beginnen... 2. Newsletter anlegen... 2. Inhalt platzieren und bearbeiten... 3. Neuen Inhalt anlegen... Seite 1 von 11 Anleitung für TYPO3 Inhalt Anleitung für TYPO3... 1 Bevor Sie beginnen... 2 Newsletter anlegen... 2 Inhalt platzieren und bearbeiten... 3 Neuen Inhalt anlegen... 3 Bestehenden Inhalt bearbeiten...

Mehr

Bedienungsanleitung. DVR-Manager UFS 922

Bedienungsanleitung. DVR-Manager UFS 922 Bedienungsanleitung DVR-Manager UFS 922 INHALT INHALT... 2 WICHTIGE HINWEISE... 3 SICHERHEITSHINWEISE... 3 ALLGEMEINER HINWEIS... 3 SYSTEM-VORAUSSETZUNG... 3 BENÖTIGTE SOFTWARE... 3 GEKREUZTES NETZWERKKABEL...

Mehr

Übung 1: Ein Haupt-/Unterformular mit dem Formular-Assistenten erstellen

Übung 1: Ein Haupt-/Unterformular mit dem Formular-Assistenten erstellen Übung 1: Ein Haupt-/Unterformular mit dem Formular-Assistenten erstellen Problem: In relationalen Datenbanken verteilen sich die Informationen i.d.r. auf mehrere Tabellen. Die Eingabe neuer Daten und die

Mehr

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen Microsoft Outlook 1 Nutzung der Groupware mit Microsoft Outlook 1.1 Outlook - CommuniGate Pro Schnittstelle installieren 4 1.2 Outlook - Elemente freigeben 11 1.3 Outlook - Freigegebene Elemente öffnen

Mehr

Technical Note 0606 ewon

Technical Note 0606 ewon Technical Note 0606 ewon M2Web Copyright by Wachendorff Prozesstechnik GmbH & Co. KG, Industriestraße 7,, Tel.: 06722/9965-20, Fax.: -78-1 - Inhaltsverzeichnis 1 Allgemeines... 3 1.1 Information... 3 1.2

Mehr

Installationsanleitung Tivoli Storage Manager für Mac OS

Installationsanleitung Tivoli Storage Manager für Mac OS 11. März 2009, Version 1.0 Installationsanleitung für Mac OS X Verwaltungsdirektion Informatikdienste Installationsanleitung für Mac OS Inhaltsverzeichnis...1 Installation... 1 Voraussetzungen...1 Version

Mehr

Wibu Hardlock Installation

Wibu Hardlock Installation Wibu Hardlock Installation 1..Allgemeines zum Hardlock... 2 2..Automatisierte Installation des Hardlocks bei einer Loco-Soft Installation... 2 3..Manuelle Installation des Hardlocks an einem Einzelplatz...

Mehr

CALCOO Lite. Inhalt. 1. Projekt anlegen / öffnen. 2. Projekt von CALCOO App importieren

CALCOO Lite. Inhalt. 1. Projekt anlegen / öffnen. 2. Projekt von CALCOO App importieren CALCOO Lite Hier finden Sie eine Kurzanleitung zu den einzelnen Projektschritten von CALCOO Light. Nach dem Lesen wissen Sie die grundlegenden Funktionen zu bedienen und können ein Projekt erstellen. Inhalt

Mehr

AK Medientechnologien 09 App Store Submission. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/

AK Medientechnologien 09 App Store Submission. Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ AK Medientechnologien 09 App Store Submission Josef Kolbitsch josef.kolbitsch@tugraz.at http://businesssolutions.tugraz.at/ Übersicht Allgemeines Provisioning Profiles Application Binary vorbereiten App

Mehr

MERLIN IPHONE. Der Schnelleinstieg ins mobile Projektmanagement. 2009 ProjectWizards GmbH, Melle, Germany. All rights reserved.

MERLIN IPHONE. Der Schnelleinstieg ins mobile Projektmanagement. 2009 ProjectWizards GmbH, Melle, Germany. All rights reserved. MERLIN IPHONE Der Schnelleinstieg ins mobile Projektmanagement. 2009 ProjectWizards GmbH, Melle, Germany. All rights reserved. EINFÜHRUNG Herzlich Willkommen zum Merlin iphone Schnelleinstieg! Danke, dass

Mehr

Import des persönlichen Zertifikats in Outlook 2003

Import des persönlichen Zertifikats in Outlook 2003 Import des persönlichen Zertifikats in Outlook 2003 1. Installation des persönlichen Zertifikats 1.1 Voraussetzungen Damit Sie das persönliche Zertifikat auf Ihren PC installieren können, benötigen Sie:

Mehr

Windows 8.1. Grundlagen. Markus Krimm. 1. Ausgabe, Oktober 2013 W81

Windows 8.1. Grundlagen. Markus Krimm. 1. Ausgabe, Oktober 2013 W81 Windows 8.1 Markus Krimm 1. Ausgabe, Oktober 2013 Grundlagen W81 Mit Windows beginnen 1 Der erste Blick auf den Startbildschirm Nach dem Einschalten des Computers und der erfolgreichen Anmeldung ist der

Mehr

estos XMPP Proxy 5.1.30.33611

estos XMPP Proxy 5.1.30.33611 estos XMPP Proxy 5.1.30.33611 1 Willkommen zum estos XMPP Proxy... 4 1.1 WAN Einstellungen... 4 1.2 LAN Einstellungen... 5 1.3 Konfiguration des Zertifikats... 6 1.4 Diagnose... 6 1.5 Proxy Dienst... 7

Mehr

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

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

Mehr

Veranstaltungen anlegen und bearbeiten

Veranstaltungen anlegen und bearbeiten Veranstaltungen anlegen und bearbeiten Dieses Dokument beschreibt, wie Sie Veranstaltungen anlegen und bearbeiten können. Login Melden Sie sich an der jeweiligen Website an, in dem Sie hinter die Internet-

Mehr

Registrierung am Elterninformationssysytem: ClaXss Infoline

Registrierung am Elterninformationssysytem: ClaXss Infoline elektronisches ElternInformationsSystem (EIS) Klicken Sie auf das Logo oder geben Sie in Ihrem Browser folgende Adresse ein: https://kommunalersprien.schule-eltern.info/infoline/claxss Diese Anleitung

Mehr