Android - En översikt samt titt på utvecklingsmiljö Kalle Prorok 12 nov 2013
Översikt Android Översikt Struktur Eclipse Runtomkring Emulator/Simulator Debugging 2013-11-12 Kalle Prorok 3
Android - översikt Google Open Handset Alliance 50 företag/organisationer Inte en hårdvaruplattform Java(liknande) för Appar Kan ersätta de inbyggda Även C för Native OS-funktionalitet Linux-kärna Open Source 2013-11-12 Kalle Prorok 4
Android Market-Google Play Stödjer olika hårdvaror High-End och enklare lower-end Mobiloperatörer Kan spärra vissa tjänster Webkit-browser www.webkit.org (safari typ) 2013-11-12 Kalle Prorok 5
Open Source Linux-Kärnan GPL Android (resten) Apache Software License Mer ok för kommersiell användning 2013-11-12 Kalle Prorok 6
Lagren AnvändarAppar (kontakter, browser) AppManagers (fönster, aktiviteter) Runtime Java via Dalvik VM Bibliotek (grafik, databas) Linux kärna (device drivers) Hårdvara (GPS, kamera) 2013-11-12 Kalle Prorok 7
Dalvik VM Möjliggör portabilitet Licensfrihet från riktiga Java Ägs av Oracle Nästan källkodskompatibelt Olika bytekod Ev stämning.. 2013-11-12 Kalle Prorok 8
Olika versioner KitKat 4.4 kom i slutet av okt 2013 Jelly Bean 4.1-4.3 Ice Cream Sandwich 4.0, gemensamt, sent 2011 Honeycomb 3.0 plattor, Gingerbread 2.3 mobiler Det tar en tid innan versionen kommer ut på handenheter, ibland aldrig.. 2013-11-12 Kalle Prorok 9
Utvecklarsidan http://developer.android.com/index.html Design Develop Distribute Mycket användbar och aktuell 2013-11-12 Kalle Prorok 10
Android Intent (viktigt) Vad man vill göra Slå upp en kontakt Öppna en website Mobilanvändaren vill ha enkel och snabb (få tryckningar) åtkomst i UI Skicka en länk Click-on-it paradigm Deklaration av ett behov + info 2013-11-12 Kalle Prorok 11
IntentFilter Deklaration förmågor och intresse av att erbjuda tjänster till de som behöver Ofta Verb VIEW, PICK, EDIT Datadelen som en URI (ca URL) Uniform Resource Identifier content://contacts/people http://www.google.com IntentFilter Definierar relationen Mellan Intent och App 2013-11-12 Kalle Prorok 12
Fördelar med IntentFilter Intent lämnas till hantering av lämplig hanterare Ofta def i AndroidManifest.xml En inbyggs App kan då anropa t ex en 3:e-parts kontakter-hanterare ACTION_VIEW+Content://contacts/peo ple/1234 Skapar igenkänning hos användaren Bra enkelhet för mobilanvändare 2013-11-12 Kalle Prorok 13
4 Androidkomponenter Activity Service BroadcastReceiver ContentProvider 2013-11-12 Kalle Prorok 14
Activity Behövs om App har UI Visar ett UI och svarar på events Använder Views för att visa UI element Motsvarar Controller i Model-View- Controller 2013-11-12 Kalle Prorok 15
Service Typisk bakgrundsprocess över längre tid Loggers Data synkronisering 2013-11-12 Kalle Prorok 16
BroadcastReceiver Kan hantera globala events, t ex ringande telefon, inkommande SMS Används av appar som önskar hantera sånt Rekommenderas starta en Service ifall längre beräkningar ska göras 2013-11-12 Kalle Prorok 17
ContentProvider Används av en App ifall den vill tillhandahålla data för andra Appar Kan använda filer, SQLite databaser Heltal, strängar men även binära data 2013-11-12 Kalle Prorok 18
AndroidManifest.xml Limmar ihop förhållanden Element av de 4 komponenttyperna annonserar sina önskemål/erbjudanden Intents+IntentFilter I Appens rotkatalog Uses-permission Ifall appen kräver säkerhetsprivilegier 2013-11-12 Kalle Prorok 19
R.java R-klassen Autogenererad ändra ej! Representerar UI-element Via Identifierare 2013-11-12 Kalle Prorok 20
Main.xml Definierar UI-element Positionering, t ex LinearLayout @ för id som kan nås via findviewbyid() Strings.xml för textsträngar Praktiskt för översättning (localize) 2013-11-12 Kalle Prorok 21
Utvecklingsmiljö Allt är gratis Android SDK Version 4.4 = Kitkat = API Level 19 Eclipse JRE Android Development tools ADT SDK & AVD Manager Plug-in för Eclipse Adb, Telnet (putty) (sätt path) Ändras ofta.. 2013-11-12 Kalle Prorok 22
Debugger via simulator resp Riktig enhet Simulatorn startar väldigt långsamt Svårt med olika touch etc Kan prova på olika virtuella enheter skärmstorlek, versioner Låt simulatorn vara igång Överföring till riktig enhet går fort Behöver aktiveras via enhetens meny Lite olika beroende på version 2013-11-12 Kalle Prorok 23
Google tjänster Google Maps Google+ Google Cloud Platform Google Play In-App Billing, Wallet Instant Buy,Mobile Ads Google Analytics 2013-11-12 Kalle Prorok 24
Skärmstorlekar Mappsystem i /res: drawable-hdpi etc Skärmstorlek small large etc Pixeltäthet: hdpi 240 dots/inch, ldpi 120. Olika layout (default = portrait land) Fragments Density independent pixels 2013-11-12 Kalle Prorok 25
Vid problem.. Sök via Google.. Stackoverflow.com http://stackoverflow.com/ Android-discuss (google group) Om olika enheter: http://androidforums.com/ 2013-11-12 Kalle Prorok 26