Android och iphone Kalle Prorok April 2011
Jämförelse - Utvecklingsplattform Apple iphone Slutet Kostar Kontrollerat Beprövat Pålitligt Begränsat En tillverkare Populärt Android Öppet Gratis Fritt Nytt Ev riskfyllt Många leverantörer Blivande populärt 2011-04-18 Kalle Prorok 2
Utvecklingsmiljö (MacIntosh) Cocoa framework Objective-C Xcode IDE Interface Builder iphone Simulator Valfri Windows/Linux/ Mac OS X Eclipse Java SDK Oracle (fd Sun) Android SDK SDK Manager 2011-04-18 Kalle Prorok 3
Designmönster (Patterns) (iphone) I Abstract Factory - interface Chain of Responsibility - eventmekanism Command -bind GUI to Actions eventhandler Composite -hierarki av obj Hanteras via rotobjektet Decorator lägg till fkn t klass utan att subklassa 2011-04-18 Kalle Prorok 4
Design Patterns (iphone) II Facade enklare gränssnitt till komplext subsystem Model View Controller app data/grafik/inmatning Memento bitstream Serialization till fil/nätverk Singleton försäkrar bara ett object Template Methods Def algoritm i superklass 2011-04-18 Kalle Prorok 5
Cocoa Frameworks touch layer Adress book UI access contacts Game Kit incl Voice & bluetooth Map Kit map & satellites Message UI - email UIKit event handl, drawing, multitouch 2011-04-18 Kalle Prorok 6
Cocoa Frameworks media layer Audio Toolbox Audio Unit AV foundation Core Audio Core Graphics Media Player Open GL ES Quartz Core + Core Services layer, OS layer 2011-04-18 Kalle Prorok 7
Leverans AppStore itunes Connect Submission Prissättning Gratis, $1, $10, $100? Uppgrade, virtual goods, reklam,.. 22% gratis, flest nerladdningar Utvecklingslicens $99/år Ratings 4+,9+,12+,17+ 2011-04-18 Kalle Prorok 8
Och nu till Android.. 2011-04-18 Kalle Prorok 9
Install av Android utvecklingsmiljö Android är en Linuxkärna fr Google Programmerar i Java (och C) Bytekod i virtuell maskin Dalvik Eclipse IDE www.eclipse.org Oracle (fd Suns) JDK Java.sun.com (styrs om) Installera paket, skapa virtuell device 2011-04-18 Kalle Prorok 10
Install av Android utvecklingsmiljö, forts Android SDK Developer.android.com/sdk Packa upp ZIP-fil Kör SDK (fd setup) manager Välj ev API (2.2; API nivå 8, alla ) Android developer tool (ADT) Plug in i Eclipse Help/Install New Software/Add http://dl-ssl.google.com/android/eclipse/ Kryssa i development, godkänn, next 2011-04-18 Kalle Prorok 11
Android Projekt i Eclipse Window/Preferences Set path, välj targets Gick inte sätta Användare via set PATH File/New project Android/Android project Kataloger Src, källkod res, resurser; bilder, ikoner Google API, bibliotek, javaarkiv Assets 2011-04-18 Kalle Prorok 12
Activity Varje ny skärmbild En app består av flera Intent (avsikt)-filter avgör vilken som ska startas Olika kriterier oncreate() Bundle som parameter Superklassen anropas först Sätt Vy; ContentView R.layout.main i gen/ - ändras ej 2011-04-18 Kalle Prorok 13
Layout och leverans Res/layout/main.xml Anger de visuella elementens placering Android:text Res/values/strings.xml Android manifest Android Application Package (APK) MD5-nyckel; överförs till emulator/mobiltelefon 2011-04-18 Kalle Prorok 14
Bibliotek i Linuxkärnan De som kräver bra prestanda Grafik Medieuppspelning Databasen SQLite Webbläsare Kan skriva egna i C med Android Native Development Kit 2011-04-18 Kalle Prorok 15
Apparnas komponenttyper Aktviteter (Activity) Det som syns, grafiken, vyer Tjänster (Service) Körs i bakgrunden, t ex musikuppsp Mottagare (BroadcastReceiver) Lyssnar efter system/inkomnameddelanden Innehållskällor (ContentProvider) Gör data tillgängliga. Fil/databas etc Åtkomst via ContentResolver 2011-04-18 Kalle Prorok 16
Intents (Avsikter) Meddelandeobjekt Kan användas av olika applikationer De aktiviteter som kan hantera den angivna typen av Intent anropas då en Intent anges Om flera så får anv välja via gränssnitt De avsikter som stödjs anges i avsiktsfilen (AndroidManifest.XML) Vad vi vill ha utfört.edit.view Hänvisning till data att hantera Ex. {ACTION_DIAL, TEL:09090510} 2011-04-18 Kalle Prorok 17