softwareprojekt: mobile development … · in aller erster linie: apple iphone und apple ipad...
Post on 17-Sep-2018
213 Views
Preview:
TRANSCRIPT
Softwareprojekt: Mobile DevelopmentSommersemester 2010 - Kick-Off
Miao Wang, Tinosch Ganjineh
Freie Universität Berlin, Institut für Informatik
14.04.2010
2Softwareprojekt: Mobile Development, Sommersemester 2010
Worum geht es?
• Entwicklung (und Vertrieb) von Software für mobile Endgeräte• In aller erster Linie: Apple iPhone und Apple iPad (Obj-C)• Vergabe von Themen, Ausarbeitung der Ideen• Hilfestellung beim technischen Entwurf und UI-Design• Ansprechpartner bei Fragen während der Implementierung• Bereitstellen der Plattform zum Vertrieb• Beteiligung am Gewinn
• Dies wird ein Softwareprojekt, keine Vorlesungd.h. selbständige Einarbeitung ist notwendig und erforderlich
• Mailingliste:• https://lists.spline.inf.fu-berlin.de/mailman/listinfo/mobiledevelopment• mobiledevelopment@lists.spline.inf.fu-berlin.de
• Veranstaltungsseite:• http://www.inf.fu-berlin.de/lehre/SS10/MD/index.html
3Softwareprojekt: Mobile Development, Sommersemester 2010
Agenda
• Organisatorisches
• Vorstellung iPhoneOS-Entwicklung
• Vergabe der Themen + Übung 1
4Softwareprojekt: Mobile Development, Sommersemester 2010
Organisatorisches
5Softwareprojekt: Mobile Development, Sommersemester 2010
Organisatorisches
• Wöchentliches Treffen• Mi, 14-18 Uhr Raum 006• Außer Termin 2: Zedat Schulungsraum Tornado
• Aufgabe• Auswahl eines Projektthemas, Erarbeiten eines Konzeptpapiers, Einarbeitung in das SW-
Framework, Bearbeiten des Projekts, Endpräsentation, (Vertrieb)
• Schein• 4SWS, 10 ECTS
• Scheinkriterien• Erfolgreiches Bearbeiten der Übungen• Erfolgreiches Fertigstellen des Projekt• Anwesenheit
• Kontakt• Miao Wang, Raum 136, miao.wang@fu-berlin.de• Tinosch Ganjineh, Raum 136, ganjineh@inf.fu-berlin.de
6Softwareprojekt: Mobile Development, Sommersemester 2010
Organisatorisches
• Kombination von Lehre und Vertrieb • Ähnlich zum Verhältnis
Entwicklerstudio <-> Publisher
• Motivation für Studenten
• Weiterfinanzierung dieses Kurses
7Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel
• Wie umfangreich wird das Projekt?• Siehe Beispiele aus den letzten Semestern
• SS 2009• SMSRaptor
• WS 2009/10• MyCookbook
8Softwareprojekt: Mobile Development, Sommersemester 2010
Publishing
• Wir geben euch die Möglichkeit eure Apps im App Store zu veröffentlichen• Ihr braucht keine Developer Lizenz zu zahlen ($99 - $299)• Wir unterstützen euch bei der Entwicklung und stellen Testgeräte• Wir kümmern uns um das Publishing• Wir kümmern uns um steuerrechtliche Angelegenheiten• Gewinne werden nach Abgaben prozentual verteilt
• Apple prüft Zulassungsvoraussetzungen für den AppStore• Keine rassistischen, gewaltverherrlichenden, etc. Inhalte• Einhaltung von Urheberrechte• Überprüfung auf Abstürze• Überprüfung der Altersfreigaben• Überprüfung von Human Interface Guidelines
• Interface Design, Usability, Responsiveness, etc.
• Überprüfung der Metadaten• Beschreibung, Größe der Bilder, etc.
• Keine Überprüfung von Code (!),aber Ablehnung von mögl. Schad-Code
9Softwareprojekt: Mobile Development, Sommersemester 2010
Vertragliche Absprache
• Eure Aufgabe• Ausarbeiten der Idee• Erstellung der App• Support
• Unsere Aufgabe• Bereitstellung der Lizenzen• Einstellen in den AppStore• Marketing• Monatliche Abrechnung• Haftung
• Ablauf• Fertigstellung der App• Einstellung in den AppStore• Nachträglicher Werkvertrag• Rechnungen (halbjährlich)
11Softwareprojekt: Mobile Development, Sommersemester 2010
Vertragliche Absprache
EntwicklungSupport
LizenzAbrechnung
HaftungMarketing
35%
30%
Apple
35%
12Softwareprojekt: Mobile Development, Sommersemester 2010
Roadmap
Kick-Off + Vergabe von Ideen14.04.10
21.04.10
28.04.10
05.05.10
12.05.10
19.05.10
26.05.10
02.06.10
09.06.10
16.06.10
23.06.10
30.06.10
07.07.10
Einführung Objective-C in der Zedat
Individualbesprechung der Themen
Programmieren I
Programmieren II --> Skelettprogramm + Simulator-Test
Programmieren III --> Erster Gerätetest
Programmieren IV
Programmieren V
Programmieren VII --> Profiler Test bzw. Test auf MemLeaks
Feinschliff
Updates
Publish
Programmieren VI --> Erweiteter Gerätetest
14.07.10 Updates
13Softwareprojekt: Mobile Development, Sommersemester 2010
Vorstellung iPhoneOS
14Softwareprojekt: Mobile Development, Sommersemester 2010
Evolution der Technik
15Softwareprojekt: Mobile Development, Sommersemester 2010
Apple iPhone
• Prozessor:• Samsung S5PC100 ARM A8 833 MHz (underclocked 600 MHz)• PowerVR SGX GPU
• Speicher: • 256 MB eDRAM• 8-32 GB Flash
• Funknetze:• UMTS/HSDPA (850, 1900, 2100 MHz)• GSM/GPRS/EDGE (850, 900, 1800, 1900 MHz)• Wi-Fi (802.11b/g)• Bluetooth 2.1 + EDR
• Sensoren:• Assisted GPS• 3-axis Accelerometer + Digital Compass• Proximity sensor + Ambient light sensor
• Display:• 3.5”, 480x320 Pixel @ 163 ppi, max. 262,144 colors• capacitive Multi-Touch, no hardware keyboard
• Kamera:• 3.0 megapixels with VGA video at 30 fps• Autofocus, white balance, no optical zoom, no flash
16Softwareprojekt: Mobile Development, Sommersemester 2010
Apple iPad
• Prozessor:• 1 GHz Apple A4
• Speicher: • 256 MB DRAM on die• 16-64 GB Flash
• Funknetze:• UMTS/HSDPA (850, 1900, 2100 MHz)• GSM/GPRS/EDGE (850, 900, 1800, 1900 MHz)• Wi-Fi (802.11a/b/g/n)• Bluetooth 2.1 + EDR
• Sensoren:• Assisted GPS• 3-axis Accelerometer + Digital Compass• Proximity sensor + Ambient light sensor
• Display:• 9.7”, 1024x768 Pixel @ 132 ppi, LED backlit• capacitive Multi-Touch, no hardware keyboard
• Kamera:• none
17Softwareprojekt: Mobile Development, Sommersemester 2010
Apple App Store
• http://www.apple.com/de/iphone/appstore/
• Gestartet am 10.07.2008 (Free and Paid)
• > 185.000 Apps im App Store (Stand 08.04.10)• Davon 3.500 iPad Apps (Stand 08.04.10)• > 4.000.000.000 Downloads im App Store (Stand 08.04.10)• ca. 50.000 aktive Entwickler weltweit (Stand 17.03.09)
18Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
19Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
20Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
21Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
22Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
23Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
24Softwareprojekt: Mobile Development, Sommersemester 2010
Statistik
Quelle: AdMob
25Softwareprojekt: Mobile Development, Sommersemester 2010
App Store: Importance of Games
26Softwareprojekt: Mobile Development, Sommersemester 2010
Developer Tools
Xcode
Interface Builder
Instruments
iPhone Simulator
Write code using a professional editor with code completion, code folding, syntax highlighting, and message bubbles showing errors and breakpoints inline with your code.
Design and test your user interface without writing a line of code, prototyping in minutes, then graphically connect your interface to the source within the Xcode editor.
Helps you track down performance bottlenecks in your iPhone applications. Instruments collects data such as disk, memory, or CPU usage in real time and displays them.
With the iPhone SDK, Xcode can build, install, run, and debug Cocoa Touch applications in a Mac-based iPhone Simulator for a rocket-fast development workflow
27Softwareprojekt: Mobile Development, Sommersemester 2010
iPhone OS Architecture
Core OS
• OS X Kernel • Mach 3.0 • BSD Sockets Security• Power Mgmt • Keychain • Certificates• File System• Bonjour
28Softwareprojekt: Mobile Development, Sommersemester 2010
iPhone OS Architecture
Core Services
• Collections • Address Book• Networking• File Access • SQLite• Core Location • Net Services • Threading• Preferences • URL utilities
29Softwareprojekt: Mobile Development, Sommersemester 2010
iPhone OS Architecture
Media
• Core Audio • OpenAL• Audio Mixing• JPG, PNG, TIFF • PDF • Quartz (2D)• Audio Recording • Core Animation • Video Playback• OpenGL ES
30Softwareprojekt: Mobile Development, Sommersemester 2010
iPhone OS Architecture
Cocoa Touch
• Multi-Touch Events• Multi-Touch Controls• Accelerometer• View Hierarchy • Localization• Alerts • Web View • People Picker• Image Picker• Camera
31Softwareprojekt: Mobile Development, Sommersemester 2010
Cocoa touch
Cocoa Touch
UIKit
• User Interfaces Elements• Application Runtime• Event Handling• Hardware APIs
Foundation
• Utility Classes• Collection Classes• Object wrappers for
system services
32Softwareprojekt: Mobile Development, Sommersemester 2010
Network Services
Store Kit
Push Service
Game Kit
Core Location
Bonjour
Web Kit
Sockets
Map Kit
33Softwareprojekt: Mobile Development, Sommersemester 2010
iPhone OS 4.0
Multitasking
• Background audio • Voice over IP • Background location • Push Notification• Local notifications • Task finishing• Fast app switching
Gaming Center
• Apples new social gaming Network• Invite friends for multiplayer games• Highscores and leader boards
iAd
• inApp-Ad Solution from Apple• Video and interactive content• Without leaving the App-scope• Get 60% of iAd revenue
New APIs• In
• Calendar Access• In-App SMS• Video Playback and Capture• Quick Look• Map Kit Improvements
34Softwareprojekt: Mobile Development, Sommersemester 2010
iPhone Tutorial
• 1. iPhone SDK installieren (aktuell 3.1.3 oder 4.0 beta) http://developer.apple.com/iphone/
• 2. Objective-C Tutorialhttp://www.infobliss.at/objc/obc001_index.htm
• 3. Hello World implementierenhttp://www.miaowang.de/studium/tutorials/iphone/iphone_1.html
• 4. iPhone Reference Library lesenhttp://developer.apple.com/iphone/library/navigation/index.html
• iPhone Getting Started Documentshttps://developer.apple.com/iphone/library/navigation/index.html?section=Resource+Types&topic=Getting+Started
• iPhone Getting Started Videos (iTunes) https://deimos.apple.com/WebObjects/Core.woa/BrowsePrivately/adc.apple.com.3393112695
• iPhone Sample Codehttps://developer.apple.com/iphone/library/navigation/index.html?section=Resource+Types&topic=Sample+Code
• iPhone Developer Forumshttp://developer.apple.com/iphone/discussionForum.action
35Softwareprojekt: Mobile Development, Sommersemester 2010
Vergabe der Themen
36Softwareprojekt: Mobile Development, Sommersemester 2010
Ideen, Ideen, Ideen … und mehr Ideen!
Die Idee macht 80% aus!
37Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel-App #1
iShoot(by Ethan Nicholas, 2008)
38Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel-App #2
iFlashlight(by John Haney, 2008)
39Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel-App #3
Skobbler(by skobbler Gmbh, 2009)
40Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel-App #4
nearestTube(by acrossair, 2009)
41Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel-App #5
Jibbigo(by Jibbigo LLC, 2009)
42Softwareprojekt: Mobile Development, Sommersemester 2010
Beispiel-App #6
Touch n Translate, iDriver(by Appirion UG, 2009)
top related