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

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

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

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

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

3.9 Grundelemente einer Benutzeroberfläche

3.9 Grundelemente einer Benutzeroberfläche 92 3 Grundlagen einer ios-anwendung 3.8.4 Target-Actions Einer der häufigsten Anwendungsfälle bei einer Oberfläche ist das Betätigen einer Schaltfläche durch einen Anwender, woraufhin eine bestimmte Aktion

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

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

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

WordPress installieren und erste Einblicke ins Dashboard

WordPress installieren und erste Einblicke ins Dashboard WordPress installieren und erste Einblicke ins Dashboard Von: Chris am 16. Dezember 2013 In diesem Tutorial zeige ich euch wie ihr WordPress in der aktuellen Version 3.7.1 auf eurem Webspace installieren

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

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

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

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

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

Mehr

Bogobit Digimux mit Viessmann Multiplex-Signalen und Märklin Central Station 2

Bogobit Digimux mit Viessmann Multiplex-Signalen und Märklin Central Station 2 Bogobit Digimux mit Viessmann Multiplex-Signalen und Märklin Central Station 2 1 Ein neues Signal in der CS2 anlegen Führen Sie die folgenden Schritte aus, um ein neues Signal in der CS2 anzulegen und

Mehr

Auf einen Blick. 1 Hello iphone... 21. 2 Die Reise nach ios... 57. 3 Sehen und anfassen... 207. 4 Alles unter Kontrolle... 353

Auf einen Blick. 1 Hello iphone... 21. 2 Die Reise nach ios... 57. 3 Sehen und anfassen... 207. 4 Alles unter Kontrolle... 353 Auf einen Blick Auf einen Blick 1 Hello iphone... 21 2 Die Reise nach ios... 57 3 Sehen und anfassen... 207 4 Alles unter Kontrolle... 353 5 Daten, Tabellen und Controller... 457 6 Models, Layer, Animationen...

Mehr

Konfigurieren einer Caritas- Startseite für Abteilungen

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

Mehr

Einführung in die Stapelverarbeitung von FixFoto

Einführung in die Stapelverarbeitung von FixFoto Einführung in die Stapelverarbeitung von FixFoto Stand: Januar 2012 Diese Anleitung bezieht sich auf FixFoto, V 3.30. In älteren oder neueren Versionen könnte die Arbeitsweise anders sein. Inhalt 1. Was

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

Installationshandbuch

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

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

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

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

icloud Kapitel Apples icloud-dienst wurde bereits in vorangegangenen in diesem Abschnitt wollen wir uns dem Service nun im Detail widmen.

icloud Kapitel Apples icloud-dienst wurde bereits in vorangegangenen in diesem Abschnitt wollen wir uns dem Service nun im Detail widmen. Kapitel 6 Apples icloud-dienst wurde bereits in vorangegangenen Kapiteln mehrfach angesprochen, in diesem Abschnitt wollen wir uns dem Service nun im Detail widmen. um einen Dienst zur Synchronisation

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

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

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

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

Anleitung: Installation von WISO Mein Büro auf einem Mac

Anleitung: Installation von WISO Mein Büro auf einem Mac Anleitung: Installation von WISO Mein Büro auf einem Mac Lieber WISO Mein Büro Anwender, WISO Mein Büro ist bisher eine reine Windows-Anwendung und lässt sich somit leider nicht direkt auf einem Macintosh

Mehr

Anleitung Erstanwendung für Fachlehrkräfte. Schritt 1: Installation und Registrierung von EasyGrade

Anleitung Erstanwendung für Fachlehrkräfte. Schritt 1: Installation und Registrierung von EasyGrade Anleitung Erstanwendung für Fachlehrkräfte 1. Installation von EasyGrade 2. Daten der Schule vom Stick ins EasyGrade bringen 3. Dateneingabe als Fachlehrkraft 4. Speichern einer Datensicherung als Fachlehrkraft

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

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

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

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

Einrichten einer portablen Arbeitsumgebung auf dem USB-Stick

Einrichten einer portablen Arbeitsumgebung auf dem USB-Stick Einrichten einer portablen Arbeitsumgebung auf dem USB-Stick Das Programm PStart eignet sich hervorragend, um portable Programme (lauffähig ohne Installation) in eine dem Startmenü ähnliche Anordnung zu

Mehr

Prof. Dr. Pollakowski 19.03.2013

Prof. Dr. Pollakowski 19.03.2013 Installations- und Bedienungsanleitung für die Mikrocontroller-Entwicklungsumgebung, das Mikrocontroler-Experimentalsystem und den Mikrocontroller-Simulator 1 Begriffe: Entwicklungsumgebung = ein Programm

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

Auf einen Blick. 1 Hello iphone... 23. 2 Die Reise nach ios... 63. 3 Sehen und anfassen... 217. 4 Alles unter Kontrolle... 403

Auf einen Blick. 1 Hello iphone... 23. 2 Die Reise nach ios... 63. 3 Sehen und anfassen... 217. 4 Alles unter Kontrolle... 403 Auf einen Blick Auf einen Blick 1 Hello iphone... 23 2 Die Reise nach ios... 63 3 Sehen und anfassen... 217 4 Alles unter Kontrolle... 403 5 Daten, Tabellen und Controller... 499 6 Models, Layer, Animationen...

Mehr

Bedienungsanleitung. Bearbeitung Kanalliste UFS 902

Bedienungsanleitung. Bearbeitung Kanalliste UFS 902 Bedienungsanleitung Bearbeitung Kanalliste UFS 902 INHALT/WICHTIGE HINWEISE INHALT/WICHTIGE HINWEISE... 2 1. USB-STICK VORBEREITEN... 3 USB-STICK FORMATIEREN... 3 BENÖTIGTE ORDNER-STRUKTUR AUF USB-STICK

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

Installation Anleitung für JTheseus und MS SQL Server 2000

Installation Anleitung für JTheseus und MS SQL Server 2000 Installation Anleitung für JTheseus und MS SQL Server 2000 Inhaltsverzeichnis 1 Installation der Datenbank 3 1.1 Erstellen der Datenbank 3 1.2 Tabellen und Minimal Daten einlesen 4 1.3 Benutzer JTheseus

Mehr

Anleitung zur Verwendung von Silverstripe 3.x

Anleitung zur Verwendung von Silverstripe 3.x Anleitung zur Verwendung von Silverstripe 3.x Inhaltsverzeichnis: 1. EINLEITUNG 2. ORIENTIERUNG 2.1 Anmelden am CMS 2.2 Die Elemente des Silverstripe CMS 2.3 Funktion des Seitenbaums 2.4 Navigieren mit

Mehr

crm-now/ps Anwenderhandbuch für die Thunderbird Erweiterung Zweite Ausgabe

crm-now/ps Anwenderhandbuch für die Thunderbird Erweiterung Zweite Ausgabe crm-now/ps Anwenderhandbuch für die Thunderbird Erweiterung Zweite Ausgabe crm-now/ps: Copyright 2006 crm-now Versionsgeschichte Version 02 08.09.2006 Release Version Version 01 16.06.2005 crm-now c/o

Mehr

Mitarbeitereinsatzplanung. easysolution GmbH 1

Mitarbeitereinsatzplanung. easysolution GmbH 1 Mitarbeitereinsatzplanung easysolution GmbH 1 Mitarbeitereinsatzplanung Vorwort Eines der wichtigsten, aber auch teuersten Ressourcen eines Unternehmens sind die Mitarbeiter. Daher sollten die Mitarbeiterarbeitszeiten

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

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

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

Etoys für Einsteiger

Etoys für Einsteiger Etoys für Einsteiger Esther Mietzsch (nach einem Vorbild von Rita Freudenberg) März 2010 www.squeakland.org www.squeak.de Starten von Etoys 1. Du steckst Deinen USB Stick in die USB Schnittstelle am Computer.

Mehr

1 Installationen. 1.1 Installationen unter Windows

1 Installationen. 1.1 Installationen unter Windows 1 Installationen Dieses Kapitel beschreibt die Installationen, die für die Nutzung von PHP und MySQL unter Windows, unter Ubuntu Linux und auf einem Mac mit OS X notwendig sind. 1.1 Installationen unter

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

Revolver Server Handbuch

Revolver Server Handbuch Revolver Server Handbuch 2011 Revolver Software GmbH 1 Schneller Start 1.1 Einführung 4 1.2 Installation 5 1.3 Server hinzufügen 9 1.4 Freischalt-Code eingeben 13 1.5 Server starten 16 1.6 Mit dem Client

Mehr

Daten sichern mit SyncBack

Daten sichern mit SyncBack Daten sichern mit SyncBack Klaus-Dieter Käser Andreas-Hofer-Str. 53 79111 Freiburg Fon: +49-761-292 43 48 Fax: +49-761-292 43 46 www.computerschule-freiburg.de kurse@computerschule-freiburg.de Daten sichern

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

12 Dokumente verwalten

12 Dokumente verwalten 12 e verwalten 12.1 e organisieren Wir wollen uns nun etwas ausführlicher damit beschäftigen, wo unsere e gespeichert werden. Textverarbeitungsprogramme schlagen beim Speichern einen Ordner vor, in dem

Mehr

Anleitung zur Webservice Entwicklung unter Eclipse

Anleitung zur Webservice Entwicklung unter Eclipse Entwicklungsumgebung installieren Sofern Sie nicht an einem Praktikumsrechner arbeiten, müssen Sie ihre Eclipse-Umgebung Webservice-fähig machen. Dazu benötigen Sie die Entwicklungsumgebung Eclipse for

Mehr

Mai 2011. Deutsche Übersetzung von Marion Göbel verfaßt mit epsilonwriter

Mai 2011. Deutsche Übersetzung von Marion Göbel verfaßt mit epsilonwriter Aplusix 3 - Installationshandbuch Mai 2011 Deutsche Übersetzung von Marion Göbel verfaßt mit epsilonwriter 1. Arten der Installation Eine Server-Installation wird mit einem Kauf-Code durchgeführt. Ein

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

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

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

Anleitung zum Usenet Programm GRABIT 1.7.2 Beta 6

Anleitung zum Usenet Programm GRABIT 1.7.2 Beta 6 Anleitung zum Usenet Programm GRABIT 1.7.2 Beta 6 Erstellt für http://www.premium-news.com Bei der Installation: Klicken Sie einmal (bei Bedingungen) auf I accept the agreement und dann 4-mal auf Next

Mehr

Kurzhandbuch Managed Exchange 2010

Kurzhandbuch Managed Exchange 2010 Kurzhandbuch Managed Exchange 2010 Seite 1 von 23 Mit Outlook 2010 richten Sie Ihr ManagedExchange-Postfach einfach und schnell in nur wenigen Schritten ein. Im Regelfall benötigen Sie dazu lediglich die

Mehr

Brother ScanViewer Anleitung für ios/os X

Brother ScanViewer Anleitung für ios/os X Brother ScanViewer Anleitung für ios/os X Version 0 GER Zu den Hinweisen In diesem Benutzerhandbuch wird der folgende Hinweisstil verwendet: HINWEIS Hinweise informieren Sie, wie auf eine bestimmte Situation

Mehr

Mac Anleitung für die Migration zum HIN Client

Mac Anleitung für die Migration zum HIN Client Mac Anleitung für die Migration zum HIN Client 1. Schritt: Installation HIN Client Software Seite 02 2. Schritt: Aktualisierung HIN Identität Seite 04 3. Schritt: Zwingende Anpassung E-Mail Konfiguration

Mehr

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

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

Mehr

Kurzanleitung CMS. Diese Kurzanleitung bietet Ihnen einen Einstieg in die Homepage Verwaltung mit dem Silverstripe CMS. Inhaltsverzeichnis

Kurzanleitung CMS. Diese Kurzanleitung bietet Ihnen einen Einstieg in die Homepage Verwaltung mit dem Silverstripe CMS. Inhaltsverzeichnis Diese Kurzanleitung bietet Ihnen einen Einstieg in die Homepage Verwaltung mit dem Silverstripe CMS Verfasser: Michael Bogucki Erstellt: 24. September 2008 Letzte Änderung: 16. Juni 2009 Inhaltsverzeichnis

Mehr

Kurzanleitung für das CMS Joomla 3.x

Kurzanleitung für das CMS Joomla 3.x Kurzanleitung für das CMS Joomla 3.x 1. Login ins Backend Die Anmeldung ins sogenannte Backend (die Verwaltungsebene) der Website erfolgt über folgenden Link: www.name-der-website.de/administrator. Das

Mehr

4D Installation. für Windows und Mac OS. 1985-2013 4D SAS / 4D, Inc. Alle Rechte vorbehalten

4D Installation. für Windows und Mac OS. 1985-2013 4D SAS / 4D, Inc. Alle Rechte vorbehalten 4D Installation für Windows und Mac OS 1985-2013 4D SAS / 4D, Inc. Alle Rechte vorbehalten 4D Installation v13 für Windows und Mac OS Copyright 1985 2013 4D SAS / 4D, Inc Alle Rechte vorbehalten Software

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

Erste Schritte mit Elvis 3 ein Beispielprojekt

Erste Schritte mit Elvis 3 ein Beispielprojekt Erste Schritte mit Elvis 3 ein Beispielprojekt Um Sie mit Elvis 3 vertraut zu machen möchten wir mit Ihnen mit diesem Kapitel ein Beispielprojekt vom ersten Aufruf von Elvis 3 bis zum Testlauf aufbauen.

Mehr

Es gibt aber weitere Möglichkeiten, die den Zugriff auf die individuell wichtigsten Internetseiten

Es gibt aber weitere Möglichkeiten, die den Zugriff auf die individuell wichtigsten Internetseiten Thema: Favoriten nutzen Seite 8 3 INTERNET PRAXIS 3.1 Favoriten in der Taskleiste Es gibt aber weitere Möglichkeiten, die den Zugriff auf die individuell wichtigsten seiten beschleunigen. Links in der

Mehr

Computergruppe Borken

Computergruppe Borken Windows Dateisystem Grundsätzliches Alle Informationen die sich auf einen Computer befinden werden in sogenannten Dateien gespeichert. Wie man zu Hause eine gewisse Ordnung hält, sollte auch im Computer

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

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

LEITFADEN Ihr App Service- Center

LEITFADEN Ihr App Service- Center Ihr App Service- Center So bedienen Sie das Service-Center Ihrer App! Herzlichen Glückwunsch zu Ihrer eigenen Firmen-App! Damit Sie das ganze Potential Ihrer neuen App ausschöpfen können, sollten Sie sich

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

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

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

Mehr

Hochschule Niederrhein Grundlagen der Prof. Dr. Nitsche Fachbereich 03 Java Programmierung Bachelor Informatik SS 2015 Übung 1. Grundlagen von Java

Hochschule Niederrhein Grundlagen der Prof. Dr. Nitsche Fachbereich 03 Java Programmierung Bachelor Informatik SS 2015 Übung 1. Grundlagen von Java Grundlagen von Java Aufgabe 1: Typen und Zuweisungen in Java Welche der folgenden Java-Anweisungen sind fehlerhaft? Handelt es sich um einen Compiler- oder einen Laufzeitfehler? Anmerkung: Folgefehler

Mehr

Installationsanleitung für Internet Security. Inhalt

Installationsanleitung für Internet Security. Inhalt Installationsanleitung für Internet Security Inhalt 1 Systemanforderungen für Internet Security...2 2 Installationsanleitung: Internet Security für einen Test auf einem Computer installieren...3 3 Installationsanleitung

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

5 Das Löschen, Verschieben oder Erstellen ganzer Seiten

5 Das Löschen, Verschieben oder Erstellen ganzer Seiten 5 Das Löschen, Verschieben oder Erstellen ganzer Seiten Inhaltsverzeichnis 5 Das Löschen, Verschieben oder Erstellen ganzer Seiten 1 Vorbemerkung.......................................... 1 5.1 Schritt

Mehr

FIOS. 1. Voraussetzungen für FDE: Foto Verbund Info und Order Service FDE Installation Version 3.0

FIOS. 1. Voraussetzungen für FDE: Foto Verbund Info und Order Service FDE Installation Version 3.0 FIOS Foto Verbund Info und Order Service FDE Installation Version 3.0 Diese Anleitung beschreibt die Installation und Einrichtung von FIOS-Data-Exchange (kurz: FDE). Mit Hilfe von FDE können Sie via Datenfernübertragung

Mehr

Handbuch USC-Homepage

Handbuch USC-Homepage Handbuch USC-Homepage I. Inhalt I. Inhalt Seite 1 II. Wichtigste Grundregel Seite 1 III. Funktionen der Seite Seite 2 1. Anmelden in der Community Seite 2 2. Mein Account Seite 3 3. Wechselzone Seite 4

Mehr

HTW-Aalen. OpenVPN - Anleitung. Eine Installations- und Nutzungsanleitung zu OpenVPN

HTW-Aalen. OpenVPN - Anleitung. Eine Installations- und Nutzungsanleitung zu OpenVPN HTW-Aalen OpenVPN - Anleitung Eine Installations- und Nutzungsanleitung zu OpenVPN Sabine Gold Oktober 2013 Inhaltsverzeichnis 1 Download und Installation des OpenVPN-Clients... 2 1.1. Betriebssystem Windows...

Mehr

Inhaltsverzeichnis. Seite

Inhaltsverzeichnis. Seite UEmail und GMX Inhaltsverzeichnis I. Email/ Allgemeines 1 II. Emailprogramm GMX 1 1. Zugangsdaten bei GMX 1 2. Anmelden bei GMX/ Zugang zu Ihrem Email-Postfach 1 3. Lesen neuer Emails 4 4. Neue Email schreiben

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

Zeiterfassung-Konnektor Handbuch

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

Mehr

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

http://www.cis.upenn.edu/~bcpierce/unison/download/stable/unison- 2.9.1/

http://www.cis.upenn.edu/~bcpierce/unison/download/stable/unison- 2.9.1/ Einführung Was ist Unison? Unison ist ein Dateisynchronisationsprogramm für Windows und Unix. Es teilt sich viele Funktionen mit anderen Programmen, wie z.b. CVS und rsync. Folgend einige Vorteile des

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

Der virtuelle HP Prime-Taschenrechner

Der virtuelle HP Prime-Taschenrechner Der virtuelle HP Prime-Taschenrechner HP Teilenummer: NW280-3002 Ausgabe 2, Februar 2014 Rechtliche Hinweise Dieses Handbuch sowie die darin enthaltenen Beispiele werden in der vorliegenden Form zur Verfügung

Mehr

Handbuch DrahtexLabelwriter 3.0

Handbuch DrahtexLabelwriter 3.0 Handbuch DrahtexLabelwriter 3.0 Inhaltsverzeichnis INSTALLATION 3 DER PROGRAMMSTART 7 DIE PROGRAMMOBERFLÄCHE 8 DIE STARTSEITE DES PROGRAMMES 8 DIE PROGRAMMSYMBOLLEISTE 9 EIN NEUES PROJEKT ERSTELLEN 10

Mehr

Der Website-Generator

Der Website-Generator Der Website-Generator Der Website-Generator im Privatbereich gibt Ihnen die Möglichkeit, schnell eine eigene Website in einheitlichem Layout zu erstellen. In Klassen, Gruppen und Institutionen können auch

Mehr

System-Update. 3. In diesem Ordner müssen nun folgende vier Dateien vorhanden sein:

System-Update. 3. In diesem Ordner müssen nun folgende vier Dateien vorhanden sein: System-Update 3. In diesem Ordner müssen nun folgende vier Dateien vorhanden sein: Um den internen Speicher Ihres Tablets vollständig nutzbar zu machen, können Sie ein Update installieren, das Sie über

Mehr

So bringst du Prolog zum Laufen...

So bringst du Prolog zum Laufen... Diese Anleitung soll dir dabei helfen den freien Prolog-Interpreter SWI-Prolog zu installieren einen geeigneten Texteditor auszuwählen, mit dem du Prolog-Programme schreiben kannst das erste kleine Programm

Mehr

Whitepaper 428-01 VCI - Virtual CAN Interface Einbindung in LabWindows/CVI

Whitepaper 428-01 VCI - Virtual CAN Interface Einbindung in LabWindows/CVI Whitepaper 428-01 VCI - Virtual CAN Interface Einbindung in LabWindows/CVI The expert for industrial and automotive communication IXXAT Hauptsitz Geschäftsbereich USA IXXAT Automation GmbH IXXAT Inc. Leibnizstr.

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

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