Annonse

Velkommen til MakeUseOfs guide for å lage din egen Android-app. I denne veiledningen tar vi en titt på hvorfor du ønsker å lage en egen Android-applikasjon, noen alternativer du har for å bygge den, og hvordan du gjør den tilgjengelig for andre.

Denne veiledningen er tilgjengelig for nedlasting som en gratis PDF. Last ned Hvordan lage en Android-app: Alt du trenger å vite nå. Kopier og del gjerne dette med venner og familie.

Introduksjon til Android-utvikling

Det er to primære måter å utvikle en Android-app på. Den første er å skrive den fra bunnen av, mest sannsynlig i Java. Men dette forutsetter selvfølgelig at du allerede vet Java eller ha tålmodighet til å lære det Så du vil utvikle Android-apper? Slik lærer duEtter så mange år skulle man tro at mobilmarkedet nå er mettet med alle apper man kan tenke seg – men det er ikke tilfelle. Det er mange nisjer som fortsatt må... Les mer før du dykker inn. Men hva om du klør etter å komme i gang med en gang?

Det andre alternativet er en av pek-og-klikk-appbyggere på markedet. Mange av disse retter seg mot bedriftsbrukere (og kommer med en bedriftsprislapp). Men MIT tilbyr sin "App Inventor", et nettbasert verktøy som lar deg bygge appen din visuelt. Du kan få til noen fine ting med App Inventor, som holder deg opptatt til du kan grave inn i Java og få tilgang til alle de kraftige funksjonene til Android-plattformen.

instagram viewer

I seksjonene nedenfor bygger vi en prototypeversjon av en enkel "scratchpad"-applikasjon, som vil lagre teksten du skriver inn i den. Vi gjør dette først i App Inventor og forhåndsviser resultatene i en Android-emulator. Deretter vil vi utvide denne applikasjonen med muligheten til å velge blant flere filer, noe som gjør den mer en "notisblokk". For denne typen forbedringer må vi dykke ned i Java og Android Studio.

Klar? La oss komme til det.

Hvorfor utvikle for Android?

Det er en rekke grunner til at du vil lage din egen Android-app, inkludert:

  • Nødvendighet: Det er oppfinnelsens mor, tross alt. Kanskje etter å ha sett i Play Store etter drømmeappen din, innser du at det er noe du vil trenger å bygge selv 4 spørsmål du bør stille deg selv før du lærer å kodeÅ lære et programmeringsspråk er populært. Men er det for alle? Før du forplikter deg til det, still deg selv følgende spørsmål og vær ærlig. Les mer fordi ingen andre har gjort det ennå.
  • Samfunnet: Å utvikle noe nyttig og gjøre det tilgjengelig gratis (spesielt som åpen kildekode) er en utmerket måte å delta i Android- og/eller FOSS-fellesskapet Hvorfor bidrar folk til åpen kildekode-prosjekter?Åpen kildekode-utvikling er fremtiden for programvare. Det er flott for brukere fordi åpen kildekode-programvare vanligvis er tilgjengelig gratis og ofte tryggere å bruke. Men hva tvinger utviklere til å bidra med kode gratis? Les mer . Uten åpen kildekode-bidrag ville det ikke vært Linux, og uten Linux ville det ikke vært noen Android Er Android virkelig åpen kildekode? Og spiller det noen rolle?Her utforsker vi om Android virkelig er åpen kildekode. Tross alt er det basert på Linux! Les mer (eller i det minste ingen Android slik vi kjenner det). Så vurder å gi tilbake!
  • Læring: Det er få bedre måter å få en forståelse av en plattform på enn å utvikle for den. Det kan være for skolen eller din egen nysgjerrighet. Og hei, hvis du kan tjene et par dollar på det til slutt, desto bedre.
  • Inntektsgenerering: På den annen side, kanskje du går på dette for å tjene penger fra starten. Mens Android en gang ble ansett som "lavleie"-distriktet for appinntekter, har dette sakte snudd. Business Insider rapportert i mars at Android-inntektene forventes å gå forbi iOS for første gang i 2017.
  • Tillegg: Utviklere lager ofte apper generelt som en måte å markedsføre, få tilgang til eller på annen måte utfylle et eksisterende produkt eller en tjeneste – som konsollfølgeapper Få mer ut av konsollen med tilhørende mobilapperEn spillkontroller er ikke en forferdelig fjernkontroll, men den er heller ikke bra. Et nettbrett eller, i noen tilfeller, en smarttelefon gir en bedre måte å få tilgang til konsollfunksjoner på. Les mer og MakeUseOfs egen app.
android lage app bruk av app

Uansett årsak, vil apputvikling utfordre dine design, tekniske og logiske ferdigheter. Og resultatet av denne øvelsen (en fungerende og nyttig applikasjon for Android) er en stor prestasjon som kan tjene som et porteføljestykke.

Det er mange måter å lage appen din på, inkludert forskjellige verktøysett, programmerings språk De beste språkene for mobilapputvikling i 2016Verden med utvikling av mobilapper er fortsatt like sterk som alltid. Hvis du vil komme i gang, er det ikke for sent! Her er språkene du bør tenke på å lære. Les mer , og forlagssteder Google Play vs. Amazon Appstore: Hvilken er bedre?Google Play Store er ikke det eneste alternativet når det gjelder å laste ned apper – bør du prøve Amazon Appstore? Les mer . På et høyt nivå deles disse inn i følgende to kategorier.

Pek-og-klikk Apps

Hvis du er helt nybegynner i utvikling, finnes det miljøer som lar deg bygge en Android-app på samme måte som du lager en Powerpoint-presentasjon. Du kan velge kontroller som knapper eller tekstbokser, slippe dem på en skjerm (som vist på bildet nedenfor), og gi noen parametere for hvordan de skal oppføre seg. Alt uten å skrive noen kode.

Hvordan lage en Android-app: Alt du trenger å vite Android-opprett appoppfinner-dra

Disse typer applikasjoner har fordelen av en grunn læringskurve. Du kan vanligvis hoppe rett inn og i det minste begynne å legge ut skjermen. De tar også mye kompleksitet ut av applikasjonen, siden de er designet for å håndtere tekniske detaljer (som objekttyper eller feilhåndtering) bak kulissene. På den annen side betyr denne enkelheten at du er prisgitt verktøyets skaper med hensyn til hvilke funksjoner som støttes. I tillegg er mange av disse verktøyene rettet mot store selskaper og kan være dyre.

Et unntak er MITs App Inventor-nettapplikasjon, som er funksjonell og gratis. Etter å ha logget på med en Google-konto, kan du klikke sammen en app i løpet av et par minutter og forhåndsvise den enten på telefonen eller via en Android-emulator.

Skriv fra bunnen av

Det andre alternativet er å skrive søknaden fra bunnen av. Dette er sannsynligvis annerledes enn det du forestiller deg - det er det ikke som filmene skildrer det Hollywood Hacks: Den beste og verste hackingen i filmerHollywood og hacking går ikke overens. Mens hacking i det virkelige liv er vanskelig, involverer filmhacking ofte bare å banke av gårde på et tastatur som om fingrene dine går av moten. Les mer .

Den skriver inn kode en linje om gangen i kildefiler kompilere dem Hvordan kompilere din egen Linux-kjerneÅ kompilere din egen Linux-kjerne er en av de nerdete, tekniske tingene, ikke sant? Vi har allerede dekket noen grunner til at du kanskje vil gjøre dette – nå er det på tide å prøve det selv! Les mer inn i en kjørbar applikasjon. Selv om det kan høres kjedelig ut, bruker du i virkeligheten mye mer av tiden din på programmering design, eller tenke gjennom hvordan ting skal fungere. Spør de fleste utviklere, og de vil si at de bruker bare 10-15 % av tiden sin på kodeinntasting. Så du vil bruke mesteparten av tiden din på å dagdrømme (produktivt) om hva appen din skal gjøre.

android opprette app androidstudio kode

Du kan kode Android-applikasjoner på et par forskjellige måter De beste språkene for mobilapputvikling i 2016Verden med utvikling av mobilapper er fortsatt like sterk som alltid. Hvis du vil komme i gang, er det ikke for sent! Her er språkene du bør tenke på å lære. Les mer . "Standard" måten er å skrive apper i Java, konsekvent et av de mest populære språkene i verden, selv om Google legger til Kotlin som et annet alternativ. For ytelsesintensive apper som spill, har du muligheten til å skrive på et "morsmål" som C++. Disse appene kjører direkte på maskinvaren til Android-enheten din, i motsetning til "vanlige" Java-baserte apper som kjører på Dalvik Virtuell maskin Hva er Java Virtual Machine og hvordan fungerer den?Selv om det ikke er strengt nødvendig å vite at det fungerer for å programmere i Java, er det fortsatt greit å vite fordi det kan hjelpe deg å bli en bedre programmerer. Les mer . Til slutt er det måter å "pakke sammen" nettapplikasjoner (ved å bruke verktøysett som Microsofts Xamarin eller Facebooks Native React 7 beste gratis veiledninger for å lære å reagere og lage nettapperGratiskurs er sjelden like omfattende og nyttige – men vi har funnet flere React-kurs som er utmerket og som vil hjelpe deg i gang på rett fot. Les mer ) for distribusjon som mobilapper som ser «native» ut.

Samtidig som integrerte utviklingsmiljøer (IDE) Tekstredigerere vs. IDEer: Hvilken er bedre for programmerere?Det kan være vanskelig å velge mellom en avansert IDE og en enklere tekstredigerer. Vi tilbyr litt innsikt for å hjelpe deg å ta den avgjørelsen. Les mer håndtere noen av de rutinemessige elementene i programmering, forstå at læringskurven for denne metoden er bratt. Uansett hvilket språk du velger, må du være kjent med det grunnleggende. Å investere denne tiden i forkant er en ulempe med denne metoden, i den forstand at du ikke vil kunne komme inn i utviklingen av appen din med en gang. Men det er en fordel i det lange løp, siden ferdighetene du lærer kan brukes andre steder. Lær Java Så du vil utvikle Android-apper? Slik lærer duEtter så mange år skulle man tro at mobilmarkedet nå er mettet med alle apper man kan tenke seg – men det er ikke tilfelle. Det er mange nisjer som fortsatt må... Les mer , og du kan utvikle applikasjoner for skrivebord og serverside (inkludert nettbaserte) i tillegg til Android-apper.

Hvilket alternativ er best for prosjektet ditt?

Så hvilken vei er den "beste?" Dette er for subjektivt til å svare på for alle, men vi kan generalisere det som følger. Hvis du er nysgjerrig, men bare "leker", hold deg til pek-og-klikk-appskaperne. De vil hjelpe deg å skrape den kreative kløen uten å kreve noe "kursarbeid". Men hvis ideen om at kurs ikke skremmer deg, vurder å ta den lengre veien og lære en programmering Språk. Investeringen vil lønne seg på mange andre måter.

Vurder i tillegg å bruke begge! Pek-og-klikk-byggere er en utmerket måte å raskt sette sammen en prototype eller «proof of concept». Bruk dem til å jobbe gjennom noen av detaljene (som layout og skjermflyt), slik de er mye raskere å stokke rundt i et musedrevet miljø. Implementer dem deretter på nytt i Java om nødvendig for å dra nytte av fleksibiliteten.

Vi tar nettopp den tilnærmingen i denne veiledningen. Vi vil:

  1. Prototype applikasjonen vår, en "kladdeblokk" som vil lagre litt tekst i en fil for deg ved å bruke MITs App Inventor.
  2. Re-implementere dette i Java (med litt hjelp fra Googles Android Studio IDE), fortsett deretter til forlenge appen slik at du kan velge blant flere filer, noe som gjør den mer en "notisblokk".

Ok, nok snakk. I neste avsnitt gjør vi oss klare til å kode.

Gjør deg klar til å lage appen din

Ikke dykk rett inn ennå - først trenger du litt kunnskap og litt programvare.

Kunnskap du trenger

Før vi begynner å installere noe programvare, er det litt kunnskap du bør ha før du starter. Først og fremst er "Hva skal den gjøre?" Å vente til du har et klart konsept for appen din før du starter utviklingen kan virke som en selvfølge - men du vil bli overrasket. Så ta deg tid til å jobbe gjennom dette konseptet, til og med skrive noen notater om oppførsel og skissere noen skjermer Hva er et nettsteds Wireframe og hvordan kan det hjelpe deg med å utvikle nettstedet ditt?På et teknisk nivå er et moderne nettsted ikke bare én ting. Det er en kompleks suppe av interagerende teknologier, for eksempel HTML (markeringen du ser på siden), JavaScript (språket som kjører i nettleseren din, ... Les mer . Få et relativt fullstendig bilde av appen din først.

Deretter se nærmere på hva som er mulig. Tenk deg for eksempel at det ideelle bildet av appen din er noe som lar deg videologge hele livet ditt for ettertiden. Du kan lage en app som tar opp video. Du kan ikke lag en som vil lagre hvert øyeblikk av livet ditt på enheten din (utilstrekkelig lagringsplass). Men du kan prøv å avlaste noe av denne lagringen til skyen, selv om det vil ta tid å utvikle, og det kommer med sine egne begrensninger (hva skjer når du ikke har nettverkstilgang?). Det er her du vil undersøke noen av de tekniske detaljene og kan informere om avgjørelser som om du vil kode fra bunnen av eller ikke.

Til slutt er det verdt å vite hva som finnes der ute allerede. Hvis du bare ønsker å lære eller bidra til fellesskapet, finnes det et eksisterende åpen kildekodeprosjekt som ditt? Kan du forkaste det prosjektet som et utgangspunkt? Eller enda bedre, utvikle forbedringen din og bidra med den? Hvis du ønsker å tjene penger, hvordan er konkurrentene dine? Hvis du skriver en enkel vekkerklokke-app og forventer å tjene en million dollar på den, bør du ta med noe spesielt på bordet.

Som diskutert, skal vi bygge en enkel skrapelodd som samler og holder litt tekst du legger inn i den. Og ved å gjøre det bryter vi reglene ovenfor, siden det allerede finnes mange Android-apper for notater der ute, både åpen 5 beste åpen kildekode-notatapper for AndroidElsker du programvare med åpen kildekode og vil du ta notater? Vi har deg dekket. Les mer og lukket kilde Hva er den beste gratis notatappen for Android?Vil du ta notater på din Android-telefon eller -nettbrett? Her er de beste gratis appene for å ta notater for Android. Les mer . Men la oss late som at dette vil bli en mye mer kompleks app senere. Du må begynne et sted.

Nå får vi noe av programvaren du trenger.

Forbereder på å utvikle med App Inventor

Du trenger ikke å installere noe for å bruke App Inventor-verktøyet. Det er en nettapplikasjon, og du får tilgang til den helt gjennom nettleseren. Når du besøker nettstedet, vil du se en knapp i øvre høyre hjørne for å Lag apper! Hvis du for øyeblikket ikke er logget på en Google-konto, vil du gå til en påloggingsside ved å klikke på denne.

android opprette app appoppfinner lage apper

Ellers bør du gå direkte til App Inventor Mine prosjekter side.

android opprette app appinventor mainweb

På dette tidspunktet bør du vurdere hvor du vil teste appen din. Hvis du er eventyrlysten, kan du teste den ut på telefonen eller nettbrettet ved å installere Companion-appen fra Play-butikken. Da er du klar for nå - du trenger et løpende prosjekt for å faktisk se noe på enheten din, men vi kommer til det senere.

Alternativt kan du bruke emulatoren til å teste appen din på datamaskinen. Last ned og installer emulatoren for operativsystemet ditt fra denne siden. Bildet nedenfor viser appen som installeres på Linux, men den riktige versjonen bør også installeres uten problemer på Windows eller Mac.

Hvordan lage en Android-app: Alt du trenger å vite android create app appinventor installdpkg 1

Du kan starte emulatoren ved å kjøre "aiStarter"-kommandoen. Dette starter en bakgrunnsprosess Hvordan kontrollere Linux-oppstartstjenester og -demonerLinux kjører mange applikasjoner "i bakgrunnen" som du kanskje ikke engang er klar over. Slik tar du kontroll over dem. Les mer som kobler din (lokale) emulator til den (skybaserte) App Inventor. Windows-systemer vil gi en snarvei for det, mens det vil starte automatisk for Mac-brukere ved pålogging. Linux-brukere må kjøre følgende i en terminal:

/usr/google/appinventor/commands-for-appinventor/aiStarter &

Når den kjører, kan du teste tilkoblingen ved å klikke på Emulator element i Koble Meny. Hvis du ser emulatoren snurre opp (som vist på bildet nedenfor), er du i gang.

android lage app appinventor emulator

Installerer Android Studio

Hvis du planlegger å utvikle noen enkle programmer, kan App Inventor være alt du trenger. Men etter å ha lekt med det en stund, kan du treffe en vegg, eller du vet kanskje at du kommer til å bruke noen funksjoner som App Inventor ikke støtter (som fakturering i appen). For dette må du ha Android Studio installert.

Nå er det offisielle utviklingsmiljøet som er godkjent av Google, Android Studio en versjon av IntelliJ IDEA Java IDE fra JetBrains. Du kan laste ned en kopi for operativsystemet ditt fra Googles Android-utviklerside her. Windows- og Mac-brukere kan starte installasjonsprogrammet ved hjelp av en EXE-fil eller DMG-bilde Slik fungerer programvareinstallatører på Windows, macOS og LinuxModerne operativsystemer gir deg enkle metoder for å sette opp nye applikasjoner. Men hva skjer egentlig når du kjører det installasjonsprogrammet eller gir den kommandoen? Les mer , henholdsvis.

Linux-brukere kan bruke ZIP-filen, pakke den ut hvor du vil, og kjøre Android Studio derfra (Windows/Mac-brukere kan også gjøre dette). Ellers kan du bruke Ubuntu-merke for å laste ned og installere pakken for deg. Hvis du bruker den nyeste LTS-versjonen (16.04 når dette skrives), må du legge til Ubuntu Lag PPA Hva er en Ubuntu PPA og hvorfor vil jeg bruke en? [Teknologi forklart] Les mer til systemet ditt for å få tilgang til Android Studio:

sudo add-apt-repository ppa: ubuntu-desktop/ubuntu-make

Oppdater deretter systemet med følgende.

sudo apt oppdatering

Til slutt, installer Ubuntu Make med denne kommandoen:

sudo apt installer umake

Når den er installert, kan du be Ubuntu Make installere Android Studio for deg med følgende kommando:

umake android android-studio
android opprette app androidstudio umake1

Etter å ha vist lisensavtalen, begynner den å laste ned og installere basisapplikasjonen. Når den er fullført og du starter Android Studio, vil en veiviser lede deg gjennom ytterligere et par trinn.

Først får du et valg om du vil ha en "Standard" installasjon, eller noe tilpasset. Velg standardinstallasjonen her, den lar deg komme raskere i gang.

android opprette app androidstudio setup2

Deretter får du en melding om at du må laste ned noen tilleggskomponenter, og det vil sannsynligvis ta litt tid.

android opprette app androidstudio setup3

Når alt er installert, får du en liten splash-skjerm som lar deg lage et nytt prosjekt, åpne et eksisterende eller få tilgang til innstillingene dine.

android opprette app androidstudio start

Jeg vet at du er klar til å skitne hendene dine. Uten videre, la oss bygge noe.

Bygge en enkel Android Notisblokk

Fordi vi (selvfølgelig) har sittet og tenkt gjennom dette før vi bare hoppet på, vet vi at Android-appen vår vil bestå av to skjermer.

Den ene lar brukeren "redigere nå" eller avslutte, og den andre vil gjøre selve redigeringen. Den første skjermen kan virke ubrukelig, men den kan komme til nytte senere når vi legger til funksjoner. Teksten som fanges på "rediger"-skjermen vil bli gjemt i en ren tekstfil, fordi ren tekst regler Alt du trenger å vite om filformater og deres egenskaperVi bruker ordet fil om hverandre: musikk, bilde, regneark, lysbildefremvisning og så videre. Men hva gjør en fil til en "fil"? La oss prøve å forstå denne grunnleggende delen av databehandling. Les mer . Følgende wireframes gir oss et godt referansepunkt (og tok bare 5 minutter å piske opp):

android opprette app wireframes

I den neste delen bygger vi den med MITs App Inventor.

Komme i gang med MIT App Inventor

Det første trinnet er å lage et nytt prosjekt. Logg på App Inventor, og klikk deretter på Start nytt prosjekt knappen til venstre (også tilgjengelig i Prosjekter Meny).

android opprette app appinventor newproject

Du får opp en dialogboks for å gi den et navn.

android opprette app oppfinner nytt prosjektnavn

Men nå er du falt inn i App Inventors Designer-visning, og det er mye å ta innover seg. La oss ta et øyeblikk til å se på hver del.

android lage app appinventor designer
  1. Tittellinjen øverst viser prosjektets navn (muoScratchpad); lar deg legge til, fjerne og bytte mellom appens skjermer (f.eks. Skjerm 1); og veksler mellom App Inventor Designer og Blokker utsikt helt til høyre.
  2. De Palett til venstre inneholder alle kontrollene og widgetene du skal bruke. De er delt opp i seksjoner som Brukergrensesnitt og Oppbevaring; vi bruker begge disse i appen vår. Vi får se hvordan Palett har forskjellige gjenstander i Blokker utsikt.
  3. De Seer viser deg hva du bygger på WYSIWYG-mote.
  4. Komponenter er en liste over elementer som er en del av gjeldende skjermbilde. Når du legger til knapper, tekstbokser osv., vises de her. Noen "skjulte" elementer, som referanser til filer, vil også vises her, selv om de faktisk ikke er en del av brukergrensesnittet.
  5. De Media delen lar deg laste opp eiendeler du vil bruke i prosjektet ditt, som bilder eller lydklipp. (Vi trenger ikke denne.)
  6. Til slutt, den Egenskaper ruten lar deg konfigurere den valgte widgeten. Hvis du for eksempel velger en bildemodul, kan du endre høyden og bredden.

Legg ut din første skjerm: "Hovedskjerm"

La oss sette sammen oppsettet for "hoved"-skjermen i Designer før vi går videre. Når vi ser på skissen, trenger vi en etikett for appnavnet, en linje med hjelpetekst, en knapp for å flytte til "rediger"-skjermen og en knapp for å avslutte. Du kan se Brukergrensesnitt paletten har alle elementene vi trenger: to Etiketter, og to Knapper. Dra disse inn i en vertikal kolonne øverst på skjermen.

android lag appoppfinner skjerm1-widgeter

Deretter konfigurerer vi hver enkelt. For etikettene kan du angi elementer som hva teksten skal være, bakgrunnsfarge og justering. Vi sentrerer begge etikettene våre, men setter bakgrunnen til appnavnet til svart med hvit tekst.

android opprette app appinventor screen1 labelconfig

Det er på tide å se hvordan det faktisk ser ut på en enhet. Når du bygger ting, gjør det i små trinn. Jeg kan ikke understreke dette nok.

android opprette app appinventor følgesvenn

Ikke bygg en stor liste over ting inn i appen din på én gang, for hvis noe går i stykker, tar det en lang på tide å finne ut hvorfor. Hvis du ønsker å teste på en ekte telefon, kan du starte opp AI2 Companion-appen og koble til App Inventor med enten QR-koden eller den medfølgende koden på seks tegn.

android opprette app appinventor følgesvenn telefon

For å forhåndsvise ved å bruke emulatoren, sørg for at du har startet aiStarter-programmet beskrevet ovenfor, og velg deretter Emulator element igjen fra Koble Meny. Uansett, etter en kort pause, bør du se appen din opp, se omtrent ut som den du har i Viewer (den faktiske layouten kan avhenge av dimensjonene til enheten og emulatoren).

android lage app appinventor app emulator

Siden tittelen ser bra ut, la oss endre teksten på de andre også og justere dem i midten (dette er en egenskap for skjermen, Juster Horisontal, ikke teksten/knappene). Nå kan du se en av de virkelig kule aspektene ved App Inventor - alle endringene dine gjøres i sanntid! Du kan se teksten endres, knappene justere justeringen, etc.

Gjør det funksjonelt

Nå som oppsettet er ferdig, la oss legge til litt funksjonalitet. Klikk på Blokker knappen øverst til venstre. Du vil se et lignende oppsett som Designer-visningen, men du vil ha noen forskjellige valg ordnet i kategorier. Dette er programmeringskonsepter i stedet for grensesnittkontroller, men som den andre visningen, vil du bruke dra-og-slipp for å sette disse sammen som en del av appen din.

android opprette app appinventor allblocks

Den venstre paletten inneholder kategorier som Kontroll, Tekst, og Variabler i kategorien "Innebygd". Blokkene i denne kategorien representerer funksjoner som i stor grad vil skje bak kulissene, for eksempel Matte elementer som kan utføre beregninger. Under dette er en liste over elementene på skjermen(e), og blokkene som er tilgjengelige her vil påvirke disse elementene. Hvis du for eksempel klikker på en av etikettene våre, vises blokker som kan endre etikettens tekst, mens knappene har blokker for å definere hva som skjer når du klikker på dem.

I tillegg til kategorien deres (representert av farge), har hver blokk også en form som representerer formålet. Disse kan grovt deles inn som følger:

  • Du kan tenke på elementer med et stort gap i midten, for eksempel "hvis-da"-blokken vist ovenfor, som de som håndterer arrangementer. Når noe finner sted i appen, vil de andre tingene i gapet kjøre.
  • Flate blokker med koblinger er en av to ting. De første er uttalelser, som tilsvarer kommandoer, elementene som passer inn i flytene ovenfor. I eksemplet ovenfor er lage en liste blokk er en uttalelse, som den er lukk søknaden.
  • Det andre alternativet er uttrykkene, som bare skiller seg litt fra utsagn. Der et utsagn kan si «sett dette til ’42′», vil et uttrykk være noe sånt som «legg til 22 til 20 og gi meg resultatet tilbake.» I det ovenstående, er på listen er et uttrykk som vil evalueres til enten sant eller usant. Uttrykk er også flate blokker, men de har sannsynligvis en flik på venstre side og et hakk til høyre.
  • Til slutt, verdier inkludere tall («17» og «42» ovenfor), tekststrenger («Ting 1» og «Ting 2»), eller sant/usant. De har vanligvis bare en fane til venstre, siden de er noe du gir til en uttalelse eller et uttrykk.

Du kan sikkert gå gjennom alle veiledninger og veiledninger på App Inventor. Imidlertid er den designet for at du bare skal begynne å klikke rundt og (bokstavelig talt) se hva som passer. På vår første side har vi to elementer som trenger oppmerksomhet (knappene), så la oss se hva vi kan finne på. En av disse (Button2) vil lukke appen når den klikkes. Siden dette er en interaksjon med knappen. Vi kan se etter knappeblokker og finne at det er en som begynner med når Button2.click (eller når knapp 1 klikkes). Dette er akkurat det vi vil ha, så vi drar dette til Viewer.

android opprette app appoppfinner skjerm1 knappeblokk1

Nå når den klikkes, vil vi at appen skal lukkes, noe som høres ut som en generell appflytfunksjon. Ta en titt i Innebygd > Kontroll seksjon, ser vi faktisk en lukk søknaden Blokkere. Og drar den til gapet i den første blokken, klikker den på plass. Suksess!

android opprette app appoppfinner skjerm1 knappeblokk2

Nå når du klikker på knappen, lukkes appen. La oss prøve det i emulatoren. Det viser oss en feil om at lukking av appen ikke støttes i utviklingsmiljøet, men å se dette betyr at det fungerer!

android opprette app oppfinner skjerm1 knappeblokk resultat

Bygge den andre skjermen: Editor-skjermen

La oss nå rette oppmerksomheten mot Button1.

Dette er ment å åpne redaktøren vår, så vi må sørge for at redaktøren eksisterer! La oss bytte tilbake til designeren og lage en ny skjerm med samme etikett som den første skjermen, a Tekstboks (sett til "fyll forelder" for Bredde, 50 % for Høyde, og med Multiline aktivert) for å holde innholdet vårt, og en annen knapp (merket «<< Lagre»). Sjekk nå det oppsettet i emulatoren!

android lage app appinventor skjerm2 layout

Før vi går videre, vet vi at vi vil gjemme innholdet fra tekstboksen, noe som høres ut som Oppbevaring. Jada, det er et par alternativer der.

Av disse, Fil er den mest enkle, og siden vi vil ha ren tekst, går det bra. Når du legger dette i Viewer, vil du legge merke til at det ikke vises. Fil er en ikke synlig komponent, da den fungerer i bakgrunnen for å lagre innholdet til en fil på enheten. Hjelpeteksten gir deg en idé om hvordan dette fungerer, men hvis du vil at disse elementene skal være synlige, er det bare å sjekke Vis skjulte komponenter i Viewer avmerkingsboksen.

android opprette app appinventor skjerm2 lagring

Bytt til blokkvisningen nå - det er på tide å programmere. Den eneste oppførselen vi trenger er når "<< Lagre"-knappen klikkes, så vi tar tak i vår når Button1.click Blokkere. Det er her App Inventor virkelig begynner å skinne.

Først lagrer vi innholdet i tekstboksen ved å ta tak i ring File1.saveFile blokk, og gi den teksten vi ønsker (ved å bruke TextBox1's Tekstboks1.tekst, som henter innholdet) og en fil for å lagre den (bare oppgi en bane og et filnavn med en tekstblokk - appen vil lage filen for deg hvis den ikke eksisterer).

La oss også sette opp skjermen for å laste innholdet i denne filen når den åpnes (Editor > når Editor.initialize Blokkere). Det burde ring File1.ReadFrom som peker på filnavnet vårt. Vi kan fange opp resultatet av å lese tekstfilen ved hjelp av Fil > når File1.GotText, tilordne det innholdet til tekstboksen ved å bruke Tekstboks > angi tekstboks. Tekst til blokk, og gi den få tekst verdi. Til slutt, etter å ha lagret, vil vi ha et klikk på knapp 1 for å sende oss tilbake til hovedskjermen (a lukk skjermen Blokkere).

android opprette app appinventor skjerm2 blokker

Siste trinn er å gå tilbake til hovedskjermen og programmere den første knappen. Vi vil at den skal sende oss til Editor-skjermen, som er et stykke kake med Kontroll > åpne en annen skjerm blokk, og spesifiserer "Editor."

android opprette app appinventor skjerm1 blokker

Hva kommer så?

Nå som du har noe som fungerer, hva kommer deretter? For å forsterke det selvfølgelig! App Inventor gir deg tilgang til et bredt utvalg av Android-funksjoner. Utover de enkle skjermene vi nettopp har laget, kan du legge til funksjoner, inkludert medieavspilling, sending av tekstmeldinger eller til og med en live nettvisning til appen din.

En av de første forbedringene du tenker på er muligheten til å velge blant flere filer. Men en rask internettsøk avslører at dette krever overlegent hackeri i App Inventor. Hvis vi vil ha denne funksjonen, må vi grave inn i Java og Android Studio-miljøet.

Utvikling i Java med Android Studio

Avsnittene nedenfor vil beskrive - på et veldig høyt nivå - utviklingen av skrapelappen vår i Java. Det er verdt å gjenta igjen: Selv om det kan gi store utbytter underveis, krever det en betydelig investering av tid å lære Java og Android Studio.

Så det blir ikke så mye forklaring på hva koden betyr nedenfor, og du bør heller ikke bekymre deg mye om det. Undervisning i Java ligger utenfor rammen av denne artikkelen. Hva vi Vil gjøre undersøker hvor nær Java-koden er de tingene vi allerede har bygget i App Inventor.

Start med å starte Android Studio, og velg Start nytt Android Studio-prosjekt punkt. Du vil bli ledet gjennom en veiviser som spør om et par ting. Den første skjermen ber om et navn for appen din, domenet ditt (dette er viktig hvis du sender til appbutikken, men ikke hvis du bare utvikler for deg selv), og en katalog for prosjektet.

android opprette app androidstudio newproject1

På neste skjerm vil du angi versjonen av Android En rask guide til Android-versjoner og -oppdateringer [Android]Hvis noen forteller deg at de kjører Android, sier de ikke så mye som du tror. I motsetning til de store datamaskinoperativsystemene, er Android et bredt operativsystem som dekker en rekke versjoner og plattformer. Hvis du vil... Les mer å målrette. Hvis du velger en nyere versjon, kan du inkludere plattformens nyere funksjoner, men kan ekskludere noen brukere hvis enheter ikke er oppdaterte. Dette er en enkel app, så vi kan holde oss til Ice Cream Sandwich.

android opprette app androidstudio newproject2

Deretter velger vi standarden Aktivitet for appen vår. Aktiviteter er et kjernekonsept i Android-utvikling, men for våre formål kan vi definere dem som skjermer. Android Studio har et nummer du kan velge mellom, men vi starter med et tomt nummer og bygger det selv. Skjermen etter det lar deg gi den et navn.

android opprette app androidstudio newproject3
android opprette app androidstudio newproject4

Når det nye prosjektet lanseres, ta et øyeblikk til å bli kjent med Android Studio.

android opprette app androidstudio main
  1. Den øverste verktøylinjen har knapper for en rekke funksjoner. Den som er viktigst for oss er Løpe knappen, som vil bygge appen og starte den i emulatoren. (Fortsett og prøv det, det vil bygge helt fint.) Det er andre som f.eks Lagre og Finne, men disse fungerer via hurtigtastene vi alle er vant til (henholdsvis Ctrl+S og Ctrl+F).
  2. Venstre hånd Prosjekt ruten viser innholdet i prosjektet. Du kan dobbeltklikke på disse for å åpne dem for redigering.
  3. Sentrumsregionen er redaktøren din. Avhengig av nøyaktig hva du redigerer, kan dette være tekstbasert eller grafisk, som vi vil se om et øyeblikk. Dette kan også vise andre ruter, for eksempel en egenskapsrute til høyre (igjen, som App Inventor).
  4. Høyre og nederste kantlinje har et utvalg andre verktøy som dukker opp som ruter når de er valgt. Det er ting som en terminal for å kjøre kommandolinjeprogrammer og versjonskontroll, men de fleste av disse er ikke viktige for et enkelt program.

Portere hovedskjermen til Java

Vi starter med å gjenoppbygge skrapelodden i Java. Når vi ser på den forrige appen vår, kan vi se at for den første skjermen trenger vi en etikett og to knapper.

I tidligere år var det å lage et brukergrensesnitt på Android en møysommelig prosess som involverte håndlaget XML. Nå for tiden gjør du det grafisk, akkurat som i App Inventor. Hver av våre aktiviteter vil ha en layoutfil (gjort i XML) og en kodefil (JAVA).

Klikk på "main_activity.xml"-fanen, og du vil se skjermen nedenfor (veldig designer-lignende). Vi kan bruke den til å dra-og-slippe kontrollene våre: a Tekstvisning (som en etikett) og to Knapper.

android opprette app androidstudio layouteditor

La oss koble opp Exit knapp. Vi må lage en knapp i kode så vel som grafisk, i motsetning til App Inventor som håndterer den bokføringen for oss.

Men som AI, Androids Java API bruker konseptet en "onClickListner." Den reagerer når en bruker klikker på en knapp akkurat som vår gamle venn "when Button1.click"-blokken. Vi bruker "finish()"-metoden slik at når brukeren klikker, vil appen avsluttes (husk, prøv dette i emulatoren når du er ferdig).

android opprette app androidstudio skjerm1 kode

Legger til redigeringsskjermen

Nå som vi kan lukke appen, vil vi spore trinnene våre på nytt. Før du kobler opp "Rediger"-knappen, la oss gjøre redigeringsaktiviteten (skjermen). Høyreklikk i Prosjekt ruten og velg Ny > Aktivitet > Tom aktivitet og gi den navnet "EditorActivity" for å lage den nye skjermen.

android opprette app androidstudio newactivity

Deretter lager vi layouten til Editoren med en EditTextBox (hvor teksten vil gå) og en knapp. Juster Egenskaper av hver til din smak.

android lage app androidstudio screen2 layout

Bytt nå til filen EditorActivity.java. Vi vil kode opp noen lignende funksjoner som det vi gjorde i App Inventor.

Man vil opprette filen for å lagre teksten vår hvis den ikke eksisterer, eller lese innholdet hvis den gjør det. Et par linjer vil lage EditTextBox og last inn teksten vår i den. Til slutt vil litt mer kode lage knappen og dens onClickListener (som vil lagre teksten til filen, og deretter lukke aktiviteten).

android opprette app androidstudio screen2-kode
android opprette app androidstudio screen2 code2

Nå når vi kjører den i emulatoren, ser vi følgende:

  1. Før kjøring er det ingen mappe på "/lagring/emulert/0/Android/data/[domene- og prosjektnavnet ditt]/filer," som er standardkatalogen for appspesifikke data.
  2. Ved første kjøring vil hovedskjermbildet vises som forventet. Fortsatt ingen katalog som ovenfor, og heller ikke vår skrapeloddfil.
  3. Ved å klikke på Redigere -knappen opprettes katalogen, det samme er filen.
  4. Ved å klikke Lagre, vil all tekst som legges inn lagres i filen. Du kan bekrefte ved å åpne filen i et tekstredigeringsprogram.
  5. Ved å klikke Redigere igjen, du vil se det forrige innholdet. Endre det og klikke Lagre lagrer den og klikker Redigere igjen vil huske det. Og så videre.
  6. Ved å klikke Exit, vil appen fullføres.

Forbedre appen: Velg lagringsfilen din

Nå har vi en fungerende versjon av vår originale App Inventor skrapelodd. Men vi porterte den til Java for å forbedre den. La oss inkludere muligheten til å velge blant flere filer i den standardkatalogen. Når vi gjør dette, vil vi virkelig gjøre dette til mer av en notatblokk enn bare en skrapelodd, så vi lager en kopi av det nåværende prosjektet ved å bruke instruksjonene her.

Vi brukte en Android Intent for å kalle opp redaktøraktiviteten vår fra den viktigste, men de er også en praktisk måte å ringe andre applikasjoner på. Ved å legge til et par linjer med kode vil vår Intent sende en forespørsel om filbehandlingsapplikasjoner De 7 beste gratis filutforskerne for AndroidDet er en haug med filbehandlings- og filutforskingsapper der ute for Android, men disse er de beste. Les mer å svare. Dette betyr at vi kan fjerne en god del av koden som sjekker for å lage filen, siden hensikten bare vil tillate oss å bla gjennom/velge en som faktisk eksisterer. Til slutt forblir redaktøraktiviteten vår nøyaktig den samme.

android opprette app androidstudio screen1new flow

Å få intensjonen vår til å gi oss tilbake en streng (Java-tekstobjekt) som vi kan pakke inn i vår hensikt var en utfordring. Heldigvis, når det kommer til programmeringsspørsmål, er internett din venn. EN raskt søk gir oss et par alternativer, inkludert kode vi kan lime inn i appen vår.

android opprette app androidstudio screen1ny kode
android opprette app androidstudio screen1new code2
Kode med tillatelse av StackOverflow

Og med denne lille endringen og litt lånt kode, kan vi bruke en filnettleser/managerapplikasjon på enheten for å velge filen for lagring av innholdet vårt. Nå som vi er i "forbedringsmodus", er det enkelt å komme opp med et par flere nyttige forbedringer:

  • Vi kan velge blant eksisterende filer, men for øyeblikket fjernet vi anlegget vårt til skape dem. Vi trenger en funksjon for at brukeren skal kunne oppgi et filnavn, og deretter opprette og velge den filen.
  • Det kan være nyttig å få appen vår til å svare på «Del»-forespørsler, slik at du kan dele en URL fra nettleseren og legge den til i en av notatfilene dine.
  • Vi har å gjøre med ren tekst her, men rikere innhold med bilder og/eller formatering er ganske standard i denne typen apper.

Med muligheten til å bruke Java, er mulighetene uendelige!

Distribuere appen din

Nå som appen din er fullført, er det første spørsmålet du må stille deg selv om du vil distribuere den i det hele tatt! Kanskje du har laget noe så personlig og tilpasset at det virker som om det ikke ville være riktig for noen andre. Men jeg vil oppfordre deg til å ikke tenke på den måten. Du vil sannsynligvis bli overrasket over hvor nyttig det er for andre; om ikke annet, er det i det minste en læringsopplevelse som viser hva en ny koder kan gjøre.

Men selv om du bestemmer deg for å holde den nye kreasjonen din for deg selv, trenger du fortsatt noen av trinnene nedenfor for å faktisk installere den på enheten din. Så la oss lære hvordan du pakker sammen appen din for å dele i kildekodeform samt en installerbar pakke.

Kildekodedistribusjon

Uansett hvilken metode du har brukt frem til dette punktet, har du endret surkode underveis.

Mens App Inventor gjør en god jobb med å skjule den faktiske koden bak kulissene, representerer alle blokkene og UI-widgetene du har flyttet rundt på kode. Og kildekoden er en helt gyldig måte å distribuere programvare på, som åpen kildekode-fellesskapet godt kan bekrefte. Dette er også en fin måte å få andre involvert i søknaden din, siden de kan ta det du har gjort og bygge videre på det.

Vi får kildekoden fra begge miljøene i et strukturert format. Da kan enten noen (inkludert oss selv) enkelt importere det tilbake til det samme programmet og komme raskt i gang.

Eksporterer kilde fra App Inventor

For å eksportere fra App Inventor, er det en enkel sak å åpne prosjektet, og deretter fra Prosjekter menyen, velg Eksporter valgt prosjekt (.aia) til datamaskinen min.

android opprette app appinventor eksport

Dette vil laste ned den nevnte .AIA-filen (antagelig "App Inventor Archive"). Men dette er faktisk en ZIP-fil; prøv å åpne den i din favorittarkivbehandling for å inspisere innholdet.

android opprette app appinventor eksporter innhold

Legg merke til at innholdet i appinventor/ai_[din bruker-ID]/[prosjektnavn] mappen er en SCM- og BKY-fil. Dette er ikke JAVA-kilden vi så i Android Studio, så du vil ikke kunne åpne disse i noe gammelt utviklingsmiljø og kompilere dem. Imidlertid kan du (eller noen andre) importere dem på nytt til App Inventor.

android opprette app appinventor import

Arkiveringskilde fra Android Studio

Å få Android Studio-prosjektet ditt ut i et arkivformat er like enkelt som å komprimere prosjektets mappe. Flytt den deretter til et nytt sted, og åpne den fra vanlig Fil > Åpne element i hovedmenyen.

Android Studio vil lese prosjektets innstillinger (arbeidsområde.xml) og alt skal være som det var før.

android opprette app appinventor eksportprosjektinnstillinger

Det er verdt å merke seg at arkivering av hele mappen vil inkludere noen cruft, spesielt filene fra programmets siste bygg.

Disse vil bli ryddet og regenerert under neste bygg, så de er ikke nødvendige for å beholde integriteten til prosjektet ditt. Men de skader det heller ikke, og det er lettere (spesielt for nybegynnere) å ikke begynne å tulle med hvilke mapper som bør følge med og hvilke som ikke bør. Bedre å ta hele greia enn å gå glipp av noe du trenger senere.

Android-pakkedistribusjon

Hvis du vil gi en kopi av appen din til noen bare for å prøve den, er en APK-fil det beste alternativet. Standard Android-pakkeformat bør være kjent for de som har gått utenfor Play Store for å få programvare.

Å få tak i disse er like enkelt som å arkivere kilden i begge programmene. Deretter kan du legge det ut på et nettsted (som F-Droid), eller gi det videre til noen vennlige folk for å få tilbakemelding. Dette gir en flott betatest for apper du vil selge senere.

Bygge en APK i App Inventor

Gå over til Bygge menyen, og velg App (lagre .apk på datamaskinen min) punkt. Appen vil begynne å bygge (bevist av en fremdriftslinje), og når den er fullført, får du en dialogboks for å lagre APK-filen. Nå kan du kopiere og sende den til ditt hjerte.

Hvordan lage en Android-app: Alt du trenger å vite android create app appinventor export build 670x427

For å installere appen, må brukere tillate tredjeparts programvareinstallasjoner i enhetens innstillinger som beskrevet her Er det trygt å installere Android-apper fra ukjente kilder?Google Play Store er ikke den eneste kilden til apper, men er det trygt å søke andre steder? Les mer .

Bygge en APK i Android Studio

Å bygge en Android-pakke er like enkelt i Android Studio. Under Bygge meny, velg Bygg APK. Når byggingen er fullført, vil en varselmelding gi deg en lenke til mappen på datamaskinen din som inneholder appen.

android opprette app androidstudio apk meny

Google Play-distribusjon

Å sette seg opp som Google-utvikler er litt av en prosess. Selv om du for all del bør vurdere det når du har litt erfaring under beltet, er det ikke noe du trenger å takle med en gang.

For det første har den en registreringsavgift på $25. Den har også en del tekniske detaljer som er noe vanskelig å endre på et senere tidspunkt. Du må for eksempel generere en kryptografisk nøkkel for å signere appene dine, og hvis du noen gang mister den, vil du ikke kunne oppdatere appen.

Men på et høyt nivå er det tre store prosesser du må gjøre for å få appen din inn i Play Store:

  1. Registrer deg som utvikler: Du kan sette opp utviklerprofilen din (basert på en Google-konto) på denne siden. Veiviseren leder deg gjennom en ganske enkel registreringsprosess, som inkluderer den nevnte avgiften på $25.
  2. Forbered appen for butikken: Emulatorversjonene av appen du har testet er også feilsøking versjoner. Dette betyr at de har mye ekstra kode relatert til feilsøking og logging som ikke er nødvendig, og de kan til og med representere et personvernproblem. Før du publiserer til butikken, må du produsere en utgivelsesversjon ved å følge disse trinnene. Dette inkluderer signering av appen din med kryptonøkkelen vi nevnte tidligere.
  3. Sett opp infrastrukturen din: Du må også sette opp Butikk-siden for appen din. Google tilbyr en liste med råd for å sette opp en oppføring som vil gi deg installasjoner (og salg!). Infrastrukturen din kan også inkludere servere som appen din vil synkroniseres med.
  4. Til slutt, hvis du ønsker å få betalt, trenger du en betalingsprofil. Dette er en av disse en gang og gjort detaljer, så sørg for at du vet hvordan alt vil passe sammen før du går videre.

Sammendrag og lærdom

Vi har kommet til slutten av guiden. Forhåpentligvis har dette vekket interessen din for Android-utvikling og gitt deg litt motivasjon til å ta ideen din og faktisk utvikle den. Men før du legger hodet ned og begynner å bygge, la oss se tilbake på noen av nøkkelleksjonene vi lærte i avsnittene ovenfor.

  • Vi så på to stier for å lage appen din: pek-og-klikk-byggere og koding fra bunnen av i Java. Den første har en lavere læringskurve og tilbyr et rimelig (men fortsatt begrenset) utvalg av funksjonalitet. Den andre lar deg bygge omtrent alt du kan tenke deg og tilbyr fordeler utover Android-utvikling, men det tar lengre tid å lære.
  • Mens de har sine fordeler og ulemper, du kan bruke begge veier! Pek-og-klikk-miljøene tilbyr en rask omstilling for å prototype appen din, mens den andre lar deg bygge den på nytt for langsiktig forbedring.
  • Selv om det er fristende å begynne å jobbe med selve appen, vil du bli veldig glad senere hvis du tar deg tid til å designe appen din, inkludert skisser av grensesnittet og/eller uformell dokumentasjon om funksjonene. Dette kan også hjelpe deg med å finne ut om en eller begge av metodene ovenfor er gode alternativer.
  • En enkel måte å begynne å utvikle på er å legge ut brukergrensesnittelementer, og deretter "koble dem opp" ved å programmere funksjonaliteten deres. Mens erfarne utviklere kan begynne å kode "bakgrunnskomponenter", hjelper det for nybegynnere å kunne visualisere alt.
  • Når du dykker ned i kode, ikke vær redd for å søke på nettet etter svar. Å kjøre et Google-søk med et par nøkkelord og "kodeeksempel" på slutten vil gi deg noen gode resultater.
  • Mens du bygger, test arbeidet ditt litt om gangen. Ellers vil det være svært vanskelig å avgjøre hvilke av de siste to timenes handlinger som har ødelagt appen din.

Med disse i tankene, gå inn og begynn å gjøre apputviklingsdrømmene dine til virkelighet. Og hvis du bestemmer deg for å gjøre hendene skitne, la oss få vite hvordan det går i kommentarfeltet (vi elsker lenker til skjermbilder, forresten). Lykke til med bygningen!

Aaron har vært albue-dyp i teknologi som forretningsanalytiker og prosjektleder i femten år, og har vært en lojal Ubuntu-bruker nesten like lenge (siden Breezy Badger). Hans interesser inkluderer åpen kildekode, småbedriftsapplikasjoner, integrasjon av Linux og Android og databehandling i ren tekstmodus.