>> FRED WIDJAJA: Okej.
Hej, alla.
Tack välkomnandet för ansluta mig vid detta seminarium.
Så idag kommer vi att tala om hur man kan utveckla appar för Android,
och i synnerhet, ska vi vara att använda Android Studio för
att utveckla våra appar.
>> Så som ni alla kanske vet.
Android använder Java, och så ska vi vara går igenom en kort introduktion
på Java själv.
Så jag vet att många av er har bara erfarenhet programmering i C. So
det är helt bra, och det är eftersom Java är mycket, mycket
liknar C, med små skillnader.
>> Så typerna i Java är fixerad i det antal byte.
Så i C har vi shorts och longs, och de
skiljer sig i antalet bitar från maskin till maskin.
I Java, det är redan inställd som standard.
Så byte har åtta bitar, shorts har 16 bitar, och så vidare och så vidare.
Vi har också chars, booleska, och även flyter och dubbel.
Så hur du programmerar in Java, det är mycket lika.
Så till exempel har vi för loopar och medan loopar,
och om och else uttalanden är exakt samma som du skulle göra i C.
>> Okej, så det speciella med Java är att den är objektorienterat.
Nu, vad är objekt?
Så om du tittar på saker omkring dig, du ska
märker att varje verkligt objekt har två gemensamma egenskaper.
Och det är att de har tillstånd och de har någon form av beteende.
>> Så till exempel, hundar skulle ha stater som
är namn, färg, ras, kanske om hunden är hungrig eller inte.
Och vissa beteenden som hundar skulle ha skulle vara skällande, eller viftar en svans,
eller hämta en boll.
Så kan vi också tillämpa denna till döda ting.
Så till exempel, bilar, har de modellen, året, max hastighet,
och så vidare och så vidare.
Och de har vissa beteenden.
Till exempel, accelererar, eller bromsning, eller gå bakåt.
>> Så Java-objekt försök att modellera detta genom att ha fält och metoder.
Så fält är de stater som Java-objekt kan ha,
medan metoden skulle representera beteende som en Java-objekt skulle ha.
Så när jag säger metoder och fält, jag verkligen
bara betyda variabler och funktioner.
De är exakt samma, förutom att de gäller ett visst objekt.
>> OK, så vi går vidare till klasser.
Java-klasser är som ritningar för ett objekt.
De berätta vilka metoder den har, vilka fält den har,
och även här har vi något kallade access modifierare som
vi kommer till på ett tag.
Så för att förklara en Java-klass, det är mycket lika i syntax till en C struct.
>> Här vi börjar med public class Bil, och sedan har vi en öppen stag och sedan
några antal fält som du vill att objektet ska ha.
Och sedan har vi här några metoder, och vi har också en objekt konstruktör.
Nu vad detta objekt konstruktor gör är det berättar objektet,
OK, jag vill initiera detta invända med någon sorts fält.
>> Så här vill vi varje bil att ha en modell och ett år.
Så vi har en konstruktor bara specifikt
modell- och året och Detta skulle ställa modellfältet
till ett visst värde, och Årets fältet också.
>> Nu om åtkomst modifierare Jag talade om.
Här har vi den offentliga och privata åtkomst modifierare.
Så du kan se det som den rwx i dina kataloger.
Så de tillåter vissa människor att läsa, och ha tillgång
till dessa områden och metoder.
>> Så om jag säger att modellen och år och snabbhet är privata,
det betyder att andra objekt kan inte Försök att komma åt denna objekts fält
det finns privata.
Men när jag satt tillgång modifierings att vara offentliga,
nu det betyder att andra föremål är fria att komma åt och även
används de metoder som definieras här.
>> Så detta är den grundläggande Bil objekt som jag har.
Vi har accelerera, bryta, och getSpeed ​​metoder.
För denna punkt är alla tydligt på Java-objekt och hur man deklarerar dem?
Cool, okej.
Så om du vill använda Java invända i ett program i sig,
då kan vi använda denna ny bil konstruktör.
Så här är vi säger att vi vill förklara ett nytt objekt, som är av typen Bil.
Och här är det att applicera modell och år,
som vi har definierat i detta objekt här.
>> Så detta är också en annan invända, om du märker.
Det är en klass för huvudprogram själv.
Och vi har denna PSVM, eller offentlig static void main, funktion,
och dess utgångs punkt i ditt program,
liknar den huvudsakliga funktion i din C-program.
Här kan vi komma åt och använda objektets funktioner
använder pricken och sedan funktionsnamn notation.
Och vi kan även ange vissa argument eller parametrar
för den funktionen.
>> OK, så nu går vidare till arv.
Så verkliga måls delar samma egenskaper.
Så till exempel, det finns olika typer av cyklar.
Till exempel, mountainbike, stadscyklar, eller tandemcyklar.
Så de har denna gemensamma egenskapen att vara en cykel.
>> Och så cyklar kan ha två hjul och de kan ha ett styre, kanske till och med
en baklykta eller något liknande.
Så Java ger oss här makt att representera objekt
som har vissa gemensamma egenskaper genom arv.
Nu, vad arv gör, är det passerar på ett objekts fält och metoder
på ett underordnat objekt.
>> Så till exempel, om jag har en bil, och det har
tillståndet av att ha fyra hjul och en ratt,
då kan vi förmedla detta till vissa olika typer av bilar.
Till exempel har vi sedan, sportbil, och en SUV.
Nu, dessa tre olika typer av bilar skulle fortfarande
har fyra hjul och en ratt, men då de
kan ha viss särdrag,
som att ha fem platser och en för en sedan, till exempel.
>> Så för att utnyttja detta arv Funktionen använder vi detta nyckelordet extends.
Så minns tillbaka till bilen invända att jag definierat tidigare.
Nu definierar jag en Sedan objekt.
Så här Sedan objektet skulle ha samma fält och funktioner, eller metoder,
att bilen skulle ha.
Men sedan, här jag specificera vissa ytterligare funktioner,
till exempel, den inställda antal passagerare
och få antal passagerare.
>> Här kan du också märka att vi kan åsidosätta metoder,
och det innebär att vi är bara ersätta beteendet
att agera annorlunda i vissa fall.
Så, till exempel, vill jag ställa in en maxhastighet för vår bil.
Och att göra det, kontrollerar jag om detta hastigheten skulle gå över maxfart.
Och om det inte gör det, sedan ringa jag super klass "påskynda metoden.
Så detta är super.accelerate () samtal super klass "påskynda metoden.
>> Slutligen ska vi prata om gränssnitt.
Så gränssnitt är ett sätt att bara exponera vissa metoder till omvärlden.
Så de är som en tabell innehållsförteckning, och du
kan tänka på dem som gillar de C header-filer, precis
liknande metoder med tomma kroppar och de specificera vad föremålet eller klassen
måste ha, eller vilka metoder objektet eller klass måste ha.
>> Så till exempel, om jag har en cykel-gränssnitt,
och den har tre olika metoder, och här om jag genomföra detta gränssnitt,
då det innebär att denna cykel skulle behöva införa samma tre
metoder som jag definierade i gränssnittet.
>> Fram till denna punkt, några andra frågor?
Okej, coolt.
Så detta var en mycket kort och snabb tutorial på Java.
Det finns sätt fler funktioner och ämnen på Java, att du faktiskt kan gå igenom.
Till exempel, det finns generika, det finns datatyper,
det finns även enums och grejer.
Så om du vill veta mer om det, gör följ dessa länkar,
och de ska lära dig mer om dem.
>> OK, så låt oss gå vidare till faktiska kött av seminariet,
och det är faktiskt Android programmering.
Så innan vi faktiskt komma till programmering,
Jag vill prata om något jargong.
Så en verksamhet är Android sätt att säga
det är en enda skärm i programmet.
>> Så, till exempel, om du har ett Gmail app, har vi utsikt mejl aktivitet.
Och sedan om du klickar på en viss e-post, att
kommer att visa en annan aktivitet där det är en vy e aktivitet.
Och då har vi också komponera aktivitet, eller redigeringsmeddelandeverksamhet.
Och så verksamheten är allmänhet bara en enda skärm
inom själva ansökan.
>> Nu, åsikter är de komponenter som upp skärmen, eller själva aktiviteten.
Så de drar en viss sak i skärmen.
Så till exempel, kan det vara en textfält, kan det vara en etikett,
det kan vara en kontroll box.
Så det är många olika typer av vyer.
Så nu har vi intentioner, och det är ett budskap
som förs vidare till en annan aktivitet.
Och de innehåller uppgifter om vad du vill här aktiviteten ska köras.
Slutligen har vi den manifest-fil, och att
är en XML-fil som ger din telefon all information om din app.
Så det är innehåller versions, och de aktiviteter som du kommer att ha.
>> OK, så låt oss börja.
Så vi kommer att vara använder Android Studio.
Så om ni har denna redan installerad, känn dig fri att följa med.
Vi ska försöka börja om från början.
Och så ska jag försöka och skapa ett nytt projekt.
Och jag kommer att ringa mitt projekt Android 101.
Och här sätter vi namnet på den Projektet i ansökan namnfältet.
>> Företag Domän, gör du inte måste verkligen oroa sig.
Detta är bara hur Android identifierar din ansökan.
Så du har ett domännamn kan du skriva i ditt domännamn insidan av det.
Men om du inte gör det, kan du känna fria att skriva in vad du vill.
Så här jag skriver bara in frederickw.com.
>> Och, slutligen, jag välja var Jag vill lagra mitt projekt i.
Och jag ska bara välja mitt skrivbord.
Så Användare, Frederick Widjaja och Desktop.
OK.
Klicka sedan på Nästa.
Här kommer jag att välja på minimi API för att få stöd.
Så i det här fallet, är jag ska välja API 15.
Och det är bra om du faktiskt bara väljer 4.4 som är den senaste API.
Eller 5, faktiskt.
Men då behöver du bara oroa dig vilka telefoner du verkligen stöder,
och vilka telefoner du riktar dig.
Klicka på Nästa.
>> OK, så vi kommer till detta skärmen, och vi är bara
kommer att använda skapa ett aktivitet genom detta.
Så jag ska klicka tom aktivitet och sedan på Nästa.
Vi kommer att kalla det viktigaste aktivitet, tror jag det är bra.
Bara kommer att kalla det, tryck Finish här.
Vänta det att läsa, och det vi går.
>> Så här märker vi tre olika mappar.
Vi har manifestet mappen som innehåller vår manifest.
Om du öppnar det, vi får se våra paket.
Eller hur Android identifierar din ansökan
och sedan har vi det här Ansökan tag, vilket
innehåller titeln på vår ansökan liksom ikon för programmet.
>> Vi kan faktiskt köra detta ansökan rakt.
Så varför inte vi försöka göra det?
Jag kommer att använda Genymotion.
Om du tog din egen telefon, kan du länka upp den och köra den om du vill.
Men jag ska bara använda ett emulator, och jag kommer att starta detta.
Ooh.
Jo jag tror att det är kommer att ta ett tag,
så jag tror att vi ska bara gå rakt till att förklara mer om detta.
Så här har vi Java katalogen, eller där källfilerna finns.
Här har vi den huvudsakliga verksamheten i sig.
Du kan se att det utökar aktivitetsklass.
Så vår huvudverksamhet är en skärm som kommer att vara i vår ansökan.
Och så här ser vi att ett antal funktioner är automatiskt genererad för oss.
Vi har den onCreate funktionen, och som kommer att kallas whenever--
STUDENTEN Har du något emot göra texten större?
FRED WIDJAJA: OK, visst.
Jag ska försöka öka teckenstorleken.
Tror att skulle vara bra.
Så bra?
>> STUDENT: Bara en liten bit högre, liksom 20 eller nåt.
>> FRED WIDJAJA: 20?
OK.
OK, okej.
Så här har vi onCreate metod som skulle
anropas när vår verksamhet skapas i [? visa?].
Vi har onCreateOptionsMenu, och vi kommer
se att det finns faktiskt en åtgärdsfältet och sedan
Vi kan lägga till vissa menyalternativ på den.
Och så här har vi onOptionsItemSelected.
Så detta är som en händelseavlyssnare, så när ett alternativ i vår åtgärdsfältet
klickas, detta Funktionen kommer att kallas,
och det kommer att skickas med en vissa objekt som klickade.
>> OK, jag ska see-- som inte fungerar bra.
Låt oss försöka starta.
Åh kära.
OK.
Detta är oroande.
OK, så i alla fall.
Här har vi layouten för vår verksamhet i sig.
Detta är vår huvudverksamhet, och här Vi märker att det finns åtgärdsfältet.
Och så har vi det här hello världs etikett, och vi kan faktiskt
redigera text här.
Om du går och bläddra ner till Hello World,
Vi kan ändra det till vad vi vill.
Till exempel kan det vara, Hej.
Välkommen.
Och där går vi, det ändrar.
Åh kära.
Denna stil fungerar inte.
OK, det är oroande.
OK, i alla fall, kan vi gå vidare utan det.
Så för nu, låt oss försöka göra några riktigt grundläggande saker.
Så här kommer vi att ha en etikett, och då är vi
kommer att ha en text view-- ledsen, inte en text vy,
vi kommer att ha en redigera text.
Och det är en komponent för dig att skriva och sånt.
Så vi har en vanlig text, och sedan vi bara lägga den på vår gränssnitt.
>> Här vill jag också lägga till lite marginal till toppen så att det ser trevligare.
Så vi kommer att gå vidare till egenskaper, och sedan vid den övre marginalen,
vi kommer att lägga in 20 UP.
Så nu, UP är bara en måttenhet i Android,
och de står för täthet oberoende pixlar.
Så, som ni kanske vet, Android, det finns många olika typer av skärmar
och sedan har de olika skärm densiteter.
Så här är det bara kommer att bli en densitet oberoende pixel,
så det kommer att bli samma genom alla skärmar.
>> Kommer att utvidga denna redigera text, och då jag också kommer att lägga till en knapp.
Och det kommer att säga OK.
20 UP.
OK.
Så nu har vi tre olika komponenter.
Och hur vi kan hänvisa till dessa i våran aktivitetsklass
är genom att använda denna metod kallas findViewByID.
Så jag ska definiera vissa områden.
Så vi har i Textview, så låt oss säga helloText.
Och sedan om du använder Android Studio, Du kan använda genvägen suppleant,
anger.
Och klicka på Importera klass för att automatiskt importera motsvarande klasser
att vi behöver.
Och så här kommer jag att lägga ett ID till Detta Textview och kallar det text_hello.
Nu när vi har definierat ett ID för denna Textview,
vi kan använda detta för att hänvisa till den Textview som vi just definierat.
Så helloText lika Textview findViewByID,
och ange sedan vi det ID som vi vill, vilket är r.ID.text_hello.
>> Så detta är mycket lik JavaScript och jQuery, där vi kan faktiskt bara
hänvisa till vissa delar i layouten bara
med hjälp av ID som vi har angett.
Så i allmänhet, för att få tillgång till en visst föremål eller ett visst fält
i vår layout, du kommer att ha att använda denna findViewByID metoden.
Och sedan ska vi göra samma sak saker för de andra två elementen.
Här kommer jag att lägga ID text_name.
Ja.
Liksom för detta en.
Button_ok.
>> Nu vad jag vill att detta ska göra är När vi klickar på OK,
och vi har inmatade någon form av namn i textfältet,
då det kommer att uppdatera denna etikett att säga, hej, namn, välkommen.
Så, tillbaka i våran aktivitetsklass är vi
också kommer att försöka se de element som vi måste hitta.
>> Så vi har Edittext nameText.
Oj.
Ange och suppleant, import klass.
Och då också OK.
Likaså ska vi göra samma sak här.
nameText lika Edittext findViewByID, r.ID.text_name.
Och sedan på OK.
findViewByID, r.ID och sedan button_ok.
>> OK, så nu har vi alla tre element som vi vill hänvisa till.
Så nu ska jag bifoga en on-klicka lyssnaren till vår knapp
att lyssna efter användaren klickar.
För detta använder vi bara setOnClickListener händelse.
Nu, här säger vi behöver specificera setOnClickListener,
och du kan göra det genom att bara ha en nya onClickListener, och tryck på Enter.
>> Och då har du här anonym klass, eller anonymt objekt.
Och vi har också denna onClick Metoden är och som i grunden
vad det kommer att kallas när vår knappens klickade.
>> Så här vill jag få det namn som var ingången till ett textfält först So
String namn är lika med nameText.getText ().
Återigen, detta är som det Java syntax för att hänvisa
till funktioner inom objektet.
Så nameText.getText, och då är vi kommer att konvertera den till en sträng.
Nu har vi det namn som var ingången av användaren.
>> Och sedan ska vi generera en ny sträng,
så det kommer att kallas hej.
Jag kommer att säga, hej, namn, välkommen.
Och slutligen, du vill att uppdatera helloText.
Så för att göra det, helt enkelt kallar vi helloText.setText (hej).
OK.
Oj.
>> Jag ska försöka och kör Genymotion en sista gång och se om det fungerar.
Om den inte gör det, det är helt bra.
OK.
Så jag antar att det inte fungerar.
Egentligen vill jag försöka göra detta.
Kan vara här.
Genymotion.
OK.
Okej.
Ja, det fungerar.
OK.
Det var skrämmande.
OK.
Jag menade inte att göra det.
OK, så vi har denna Android emulator.
Låt mig stänga av detta.
Så vi har vår Android-emulator.
Så vi ska försöka köra denna app som vi gjorde.
Bara att gå till klicka på knappen Spela, och det kommer att säga, väntar på adb.
Åh, man.
Starta.
OK, jag antar att detta fortfarande inte fungerar.
OK, nevermind, då.
detta kommer att vara synd.
Men så låt oss säga att vi vill ha att skapa en ny verksamhet,
och vi kommer att ha en bild i denna verksamhet.
För att göra det, kan vi bara klicka denna Arkiv och sedan på Ny.
Och så här kan vi välja Aktivitet och sedan Blank aktivitet.
Här kommer vi att kalla det kanske CatActivity.
>> OK, så nu den genererar två andra filer.
En kallas activity_cat, och den andra
kallas catActivity, vilket är en klass.
Så låt oss säga att vi vill lägga en bild av en katt här.
Så när du gör det, kommer vi att använda Image klassen.
Vi kommer att lägga den på här.
Och sedan ställa marginalen till 20 DP.
>> Och nu ska vi hitta en bild av en katt på internet.
Så låt oss se.
Kat.
OK.
Jag antar att detta är bra.
OK.
Så nu har vi vår image.
Så vi kommer att lägga det i vårt projekt.
Kan göra detta genom att höger klicka, och then-- vi
kan faktiskt bara öppna den här, go hämtningar, ledsen, skrivbord.
Kommer att försöka hitta den.
Kat.
Just här.
Jag kommer att kopiera den till min mapp.
Nu kommer det att fråga mig några alternativ.
Nu vill jag bara att detta ska vara i utdragbar mappen,
och det kommer att bli för alla olika skärmupplösningar.
Alternativt kan vi faktiskt bara välja
vilket skärmupplösning du vill här bilden att vara i.
Så kommer att välja utdragbar mappen, klicka på OK.
Bara att gå till name it cat.jpg.
>> OK, så, nu är det läggas in i vår image view.
vi kommer att behöva använda denna källa just här,
och då kan vi använda denna dot dot dot knappen och välj katten bilden.
OK.
Så nu vill jag göra det en sådan att det är precis rätt storlek.
Så jag kommer att välja detta justera visa alternativet bounds just här,
och som automatiskt ställer den till rätt storlek.
OK.
Nu, för att verkligen lansera denna aktivitet från vår tidigare verksamhet,
du kommer att behöva använda något som kallas uppsåt.
Så låt oss säga jag kommer att lägga till en annan knapp som startar aktiviteten.
Jag kommer att lägga upp den här, just här.
Och då det kommer att har texten aktivera den.
Oj.
OK.
>> Nu, hur ska vi egentligen öppna ny verksamhet inom denna verksamhet?
Så samma affär som tidigare.
Vi behöver lägga ett ID till detta knappen, och kallar det button_activate.
Och sedan i våran verksamhet, gå att ha denna nya Button activateButton.
Och sedan också använda findViewByID metoden.
activateButton lika Knapp findViewByID r.ID.button_activate.
>> OK.
Och då kommer vi också att lägg i en onClickListener.
Ny onClickListener.
Och sedan ska vi använda denna sak kallad Intent.
Intent lika ny Intent (detta).
Och sedan namnet på den aktivitet som vi vill visa upp.
Så här i denna, vi kommer att ha catActivity.class.
Ursäkta.
Vi kommer att behöva specificera @ MainActivity.this.
Så nu den .Detta egenskapen hänvisar till den aktuella förekomsten av objektet
själv.
OK.
Fram till denna punkt, några frågor?
Alla bra?
Okej.
>> Och sedan om du vill starta aktiviteten, är det ganska enkelt.
Vi kallar bara den startActivity metoden.
Och då vi passerar i Intent objekt som vi just har definierat.
Tyvärr, vi kan inte riktigt visa denna.
Jag hoppades att vi faktiskt kan köra detta och visa den tillsammans i seminariet,
men tyvärr inte.
Åh, man.
Jag förstår.
Åh, vi ska försöka döda ATB.exe.
OK.
Starta.
Fungerade det?
Åh, OK.
Så nu är det faktiskt sammanställa.
Oh.
Tyvärr, det finns inga enheter körs.
Låt oss försöka starta om min emulator.
Ah, det går vi.
Det föreföll.
OK.
Så jag kommer att lansera min app på min Android-emulator.
Och vi har saker att vi definierat just nu.
Så vi har etiketten, textvyn, textfält, och sedan på knappen.
Så jag ska ingång mitt namn här,
och det vi går, ändrade det texten.
Så om vi skriver i Foo, det kommer att förändras till Foo.
>> Och om jag klickar på Aktivera knapp, vilket
Vi har kopplat att faktiskt lansera en ny verksamhet, förhoppningsvis kommer detta att fungera,
Det vi går.
Det lanserar den nya verksamheten.
För att gå tillbaka, kan vi trycka knappen Tillbaka här.
Eller inte.
Åh, det går vi.
Oj.
Det var dåligt.
OK.
>> Så nu när vi har genomfört några grundläggande saker i Android,
Vi kan försöka göra en del mer komplicerade saker.
Så först, låt oss försöka och passera meddelanden från en aktivitet till en annan.
Så låt oss säga att vi vill passera på ett namn från den huvudsakliga verksamheten
till katten aktivitet.
Och ett namn skulle vara hämtas från denna nameText.
>> OK, så först, vi kommer att hämta namnet här.
Strängnamnet är nameText.getText (). toString ().
OK.
Och då kan vi använda denna sak kallas intent.putExtra (namn),
och då är det faktiskt också vill ha en nyckel för denna extra fält.
>> Så jag kommer att definiera en ny nyckel, vi kallar det EXTRA_NAME.
Så jag kommer att använda detta nyckel, CatActivity.EXTRA_NAME,
och sedan passera i själva namnet.
>> OK, så nu kan vi faktiskt hämta detta inom den nya CatActivity.
För att göra det, vi måste använda uppsåt lika getIntent metod.
Så nu det kommer att hämta avsikten att
användes för att kalla denna nya verksamhet.
Så om du vill hämta strängen att vi faktiskt sätter inuti uppsåt,
Du kan använda en intent.getStringExtra och sedan passera i samma tonart,
>> OK, så nu ska vi säga att vi dig vill ändra detta fält.
Ändra det här fältet till höger här.
Och låt oss göra det teckensnitt Storleken på detta fält större.
Så låt oss säga att jag vill att detta ska vara 20 DP.
OK.
Och jag kommer att lägga till en ID för denna Textview,
och jag kommer att kalla det text_cat.
Ursäkta.
>> Och tillbaka i CatActivity, Samma affär som tidigare.
Vi kommer att definiera vissa områden.
Här det kommer att bli en Textview catText.
Och sedan catText lika Textview findViewByID, r.ID.text_cat.
OK.
Och sedan tillbaka in här, jag är kommer att ställa in text höger
efter att vi hämta för den från uppsåt.
setText (namn).
>> OK, så låt oss försöka att ut.
Klicka på knappen Spela.
Jag kommer att använda samma enhet.
Tillbaka in här.
Så låt oss säga att jag inte input-- om vi inte anger något namn,
låt oss se vad som händer.
Så nu finns det ingenting som visas.
Så vi går tillbaka och mata vårt namn, det bara kommer att säga Fred.
Så vi kan faktiskt passera meddelanden från en aktivitet till en annan.
OK.
>> Så det finns en massa andra vyer som du kan använda i Android.
Så nu har vi förloppsindikatorer, har vi listvyer, har vi växlingsknapparna,
och om du verkligen ville att lära sig mer om det,
du faktiskt kan besöka dessa webbsidor.
De innehåller många olika resurser.
Så till exempel, API vägleda rätt här faktiskt
ger dig några kodexempel för vissa funktioner i Android biblioteket.
>> Och ett par tutorials jag funnit användbara när man lär om Android.
Det är den officiella handledning själva, och även denna andra handledning här.
Och slutligen, kan du faktiskt använda olika bibliotek
för din Android applikation.
Nu, dessa faktiskt förlänga funktionaliteten i din app
utan att behöva verkligen skriva mycket kod.
Nackdelen är, om naturligtvis att du faktiskt
måste lära biblioteken själv.
>> Så till exempel om du vill göra användning av Dropbox moln teknik,
då kan du använda Dropbox API.
Liknande med Facebook API.
Och sedan finns det faktiskt ett par olika andra diverse bibliotek
som du kan använda.
Om du försöker att få, liksom, JSON från en viss webbplats,
då jag tror att Google JSON biblioteket skulle vara ganska bra.
Så nu, omvandlar att en JSON formaterad text i en Java-objekt,
och vice versa.
>> Och sedan finns det Retrofit och Picasso.
Och det är om du vill use-- det är för om du använder en resten API.
Och Picasso, om du använder bilder för din Android applikation.
Okej.
Tack så mycket, och ha kul kodning.