Android Programmering 10 timers kurs. Forutsetninger Noe bakgrunn i Java eller et annet objektorientert språk Litt peiling på XML Vi bruker Windows 7.

Slides:



Advertisements
Liknende presentasjoner
Nedlasting av apper på Apple
Advertisements

Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
C++ for Java-programmerere
Android-Programmering Våren Google Maps • Installere Google Play Services SDK (må kanskje oppdatere ADT) • Legg til bibliotek som library dependency.
Nedlasting av Java Java bruker du til bl.a. å logge deg inn i nettbanken. Åpne Internett og skriv, java.com i adressefeltet, klikk Enter. Klikk på Free.
GrannyOS Get Granny Connected. Skaperne •Mats Ringstad •Johan Steen •Johan Isaksen •Marius Thøring •Anders Lassen.
Java database persistence framework.  SELECT by FROM postnr AS p WHERE ( SELECT DISTINCT postnr FROM addr AS a WHERE user.adrId = a.Id ) = p.postnr;
Introduksjon til objektorientert programmering i PHP
Etter forarbeidet og dagen i dag er målet at dere skal kunne:
1 Litt om OO og programmering Arne Maus. 2 OO og Java (og C++, C#)  Arven fra Simula  Programstruktur i Java  Generering av objekter  Beskyttelse.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Begrenset redigering “Klubbjournalister” For web ansvarlig klubb.
Java 12 Mer filbehandling - skrive til fil HashMap Et større eksempel Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet.
Objektorientert programmering i PHP del 2
Programmering av dynamiske websider i C# - hva er det, og hvordan undervise? Tom Heine Nätt.
IS-102 Klassedefinisjoner
Gerica på ny plattform Oppdatert
© Lars-Erik Kindblad.  Et platformuavhengig verktøy for å automatisere build prosesser.  Støttes og drives av Apache Software Foundation.  Kommer ferdig.
Bakgrunn. Funksjoner. Nøkkelfunksjoner. Application Manager. View Controller. Validation. Dialog Manager. Clay. Tiger extensions.
Tema: Introduksjon Hvorfor Velocity? Installasjon Velocity VS. JSF / JSP Eksempler Oppsumering.
C# for javaprogrammerere
Android-Programmering Våren Oversikt – PendingIntents Rollen til PendingIntents Vanlig bruk Deling Sending.
Android-Programmering Våren Publisere applikasjonen din Forberede publiseringen Publisere applikasjonen til brukerne Google Play – koster ca 150.
ANDROID-PROGRAMMERING VÅREN ACTIVITY OG INTENTS Repetisjon fra forrige gang.
Fag LO189D - Objektorientert programmering Objektorientert programmering© Else Lervik, TISIP - HiST/IDB vår-99Leksjon 11 Applet’s Hva karakteriserer applet’sside.
LocMoc : Avatar 3D – Visualisering av menneskelige bevegelser ved bruk av Java og Coin3D. En presentasjon av: Øivind Hoff Johansen og Jon Kåre Sørensen.
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 31.8 Kapittel 3: Grunnlag for programmering i Visual Basic.
Objekt Orientert Programmering (OOP). Objektorientering (OO)1/6 Objektorientering er en grunnleggende måte å organisere komplekse fenomener på.
Læring og tenkning Systemutvikling er læring Gjensidig respekt og samarbeid Følge en konkret oppskrift Velge blant flere oppskrifter Nå målet uten oppskrift,
Strukturerende elementer i UML
Web-applikasjoner Prosjekt3 Logging Gruppe 9 Malik Muhammad Naeem Kevan Qureshi.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Objektorientert programmering
Tema: Test First Positivist: Det som ikke kan måles, eksisterer ikke! Reduserer sjanser for defekter! Gir en oppdatert ”TODO-liste” Gir trygghet til å.
Hjelp! Jeg skal undervise i IT 2!
Fjernstyring av PCer med NTRconnect Svein/ALEPH brukermøte 2007.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
Jæger: Robuste og sikre systemer INF150 Programmering Kapittel 2: Problemløsning Kapittel 3.1 og 3.2.
Hovedprosjekt 10 E Språktreningsprogram i Java utført av Ingrid Bork.
Android-Programmering Våren Introduksjon ActionBar Behovet for forandring Hva er Android ActionBar Tilpasning av ActionBar ActionBar - versjonshåndtering.
Main metoden n public static void main(String[] args){ } n Inni denne metoden skjer alt! n Det kan bare finnes en main metode per program. n Den kan ligge.
Android-Programmering Våren Oversikt Ytelse vs responsivitet Strategier for og opprettholde responsiviteten Tråder Asynchronous Task.
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
Ekstra mange tips til Oblig 3! 12. mars 2007 Are Magnus Bruaset og Arild Waaler Inst. for informatikk, UiO.
Hva er en robot? Roboter er mer enn maskiner som ligner mennesker.
JavaFX i kodeklubben Apps i Java. Programmering og programmeringsspråk Alle programmeringsspråk er egentlig like... men alt som følger med språket (verktøy,
INF1000 (Uke 14) Eksamen V06 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Arild Waaler.
Byggeklosser i java  Klassedefinisjon  Variabel deklarasjon  Metodedeklarasjoner  En ordentlig klasse  Spesielle/kryptiske skrivemåter  løkker og.
Programmering av mobile enheter nr.027
UiO Programkiosk: Ny portal og tilgang fra Mac og Linux
JADE-LEAP AmbieSense er et EU støttet forskningsprosjekt. I dette prosjektet prøver man å integrere nye typer teknologi for bruk på mobile enheter I den.
Operativsystem IKT for lærere 15. november Hvorfor lære om dette? Kanskje den mest brukte programvaren i løpet av en (arbeids)dag Forskjellige operativsystem.
Android-Programmering Våren Oversikt Long-running operasjoner Introduksjon til Android services On-demand service Bruk av servicer på tvers av prosesser.
Trafikantens mobile sanntidssystem Presentasjon INF5261.
Android-programmering Vår Kursinformasjon Hva er Android? Generelt Historie Versjoner Operativsystem og arkitektur Komponenter i Android Android.
Android-Programmering Våren Oversikt – PendingIntents  Rollen til PendingIntents  Vanlig bruk  Deling  Sending.
Android-Programmering Våren Introduksjon ActionBar  Behovet for forandring  Hva er Android ActionBar  Tilpasning av ActionBar  ActionBar - versjonshåndtering.
AndroidManifest.xml Kompatibilitet og rettigheter.
Android-Programmering Våren Oversikt Ytelse vs responsivitet Strategier for og opprettholde responsiviteten Tråder Asynchronous Task.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
Strukturerende elementer i UML
Activity og Intents Activity Intent
Triks Avslutt alle klasser, metoder og løkker samtidig som du lager dem. Deklarer alle variablene/referansene på begynnelsen av klassen. Hvis du definerer.
Android-Programmering
Distribusjon av musikk over bluetooth
Informasjonssikkerhet i hverdagen
| Microsoft Norge.
Objektorientert programmering i Java
Utskrift av presentasjonen:

Android Programmering 10 timers kurs

Forutsetninger Noe bakgrunn i Java eller et annet objektorientert språk Litt peiling på XML Vi bruker Windows 7 eller nyere alt. mac Vi kommer til å benytte Android Studio (Det er også mulig å benytte Eclipse) Dette kurset skal gi grunnleggende kunnskaper i androidprogrammering

Nøkkelpunkter Androidversjoner har API-nummer og kodenavn En typisk app har Activities, Layouts og resursfiler Layout definerer utlegget på skjermen. Den ligger i app/scr/main/res/layout –folder Activities beskriver hvordan programmet skal oppføre seg. En AVD simulerer en ekte android enhet. En APK er programeringspakken som lastes inn i android- enheten. (Tilsvarer en jar-enhet i java) TextView og Button er grafiske enheter kalt widgets og er Views.

Plattformer Startet av Android Inc Kjøpt opp av Google i 2005 Platform version API Level Codename Year Gingerbread Ice Cream Sandwich – Jelly Bean Kit kat Lollipop Marshmallow2015

Plattformer

Android OS

Grunnlag En app programmeres i JAVA (Eller C++) – Ikke alle java class’er er brukbare til mobiltelefon og er derfor ekskludert. En task består av en eller flere «activities» – Sider i appen korresponderer til en activity Fragment brukes for å plassere flere deler samtidig på skjermen i en activity Intents er meldingssystemet mellom activities. Intents består av: – En action som f.eks Button view – Tilhørende Data.

Activities My_Layout.xml My_Activity.java

Intents Når du sender et intent så sender du en melding om at noe skal skje. Starte en applikasjon eller starte en ny aktivitet i din applikasjon. En activity som skal kunne kalles fra andre apper må registreres i et intentfilter. Hvis flere kallmuligheter er mulig, vil brukeren kunne velge hvilken app som skal startes.

Views Et view er en rektangulær del av skjermen – TextView (widget) – Button (widget) – ImageView (widget) – Layout (Viewgroup) Java classes: Viewgroup View Widget

main() metoden main() starter et C- program I android startes en activity med onCreate() callback fra android-kjøresystem Denne startes på grunnlag av en klikk på iconet til appen Se neste slide..

Tilstandsdiagram for en activity i Android.

Hva gjør disse automatiske metodene ?

Hva trengs for å skrive et program? Utviklingsverktøy- Android Studio eller Eclipse. Vi kommer til å benytte Android Studio. + Java – 1.7 SDK - software development kit USB –drivere for overføring av program Alt. Emulator Fra SDK

Installering av Android Studio

Installering av Java

Android SDK

Legg til Android sdk

Support libraries Brukes for å gi gamle utgaver nye muligheter. V7 betyr at disse bibliotekene kan benyttes ned til api-level 7

Inne i SDK

Si hei til emulatoren

Mitt første program

Velg empty activity

Mitt første program

Kjør i emulator

Kjør på en fysisk enhet

Filstruktur – Manifest.xml

Innhold – Navnet på programmet = Entydig ID – Icon for programmet – Activities og bakgrunnsservice – Tillatelser Internet Telefon Posisjon Kamera etc.

Filstruktur MainActivity.java

Filstruktur - Layout

Filstruktur - Values

Filstruktur – build.gradle (app)

Layout.xml i Designvisning

I designmode. Endre størrelse og farge på textView

MainActivity.java package com.example.gemi.my10; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends Activity protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }

AppCompatActivity extends Activity

AppCompatActivity vs. Activity på eldre enheter public class MainActivity extends AppCompatActivity { public class MainActivity extends Activity {

Button widget

Java-delen – MainActivity.java import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import java.util.Date; public class MainActivity extends AppCompatActivity { Button protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn=(Button)findViewById(R.id.button); //Vi må koble sammen btn og widget button updateTime(); public void onClick(View v) { updateTime(); } private void updateTime(){ btn.setText(new Date().toString()); } }

Sammenheng mellom Activity, Layout og Device onCreate() setContentView(R.layout.activity_main); Push button New date()

Filer i prosjektet

Filer i prosjektet- forts.