Facebook Pixel
Searching...
Eesti
EnglishEnglish
EspañolSpanish
简体中文Chinese
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Learning Android

Learning Android

by Marko Gargenta 2011 245 pages
3.69
100+ ratings
Listen
Listen

Key Takeaways

1. Androidi arhitektuur pakub paindlikku aluspinda mobiilirakenduste arendamiseks

Android on ulatuslik avatud lähtekoodiga platvorm, mis on loodud mobiilseadmete jaoks.

Kihted arhitektuur. Androidi arhitektuur koosneb mitmest kihist, sealhulgas Linuxi tuum, kohalikud teegid, tööaeg, rakenduste raamistik ja rakendused. See modulaarne disain võimaldab paindlikkust ja kohandatavust erinevate seadmete ja tootjate vahel. Androidi avatud lähtekood võimaldab arendajatel pääseda ligi ja muuta platvormi lähtekoodi, edendades innovatsiooni ja kohandatavust.

Seadmest sõltumatu ühilduvus. Androidi arhitektuur abstraktiseerib riistvaraspetsiifilised üksikasjad, võimaldades arendajatel luua rakendusi, mis töötavad laias valikus seadmetes erinevate ekraanisuuruste, eraldusvõime ja riistvaravõimetega. Seda saavutatakse selliste tööriistade kaudu nagu riistvara abstraktsioonikiht (HAL) ja XML-i paigutuste kasutamine kasutajaliideste määratlemiseks.

2. Java ja XML on Androidi rakenduste loomise põhikeeled

Rakenduse eelistuste loomiseks peame: Looma eelistuste ressursifaili nimega settings.xml. Rakendama SettingsActivity.java faili, mis laadib selle ressursifaili.

Java loogika jaoks. Java on peamine programmeerimiskeel Androidi rakenduste arendamiseks, mida kasutatakse rakenduse loogika rakendamiseks, kasutajate interaktsioonide haldamiseks ja andmete haldamiseks. Java objektorienteeritud loomus ja ulatuslik standardteek muudavad selle keerukate rakenduste ehitamiseks sobivaks.

XML ressursside jaoks. XML-i kasutatakse Androidi rakendustes erinevate ressursside määratlemiseks, sealhulgas:

  • Paigutused: Kasutajaliideste struktuuri ja välimuse kirjeldamine
  • Stringid: Tekstisisu salvestamine lokaliseerimiseks
  • Joonistused: Vektorgraafika ja teiste visuaalsete elementide määratlemine
  • Stiilid ja teemad: Ühtsete visuaalsete omaduste määramine rakenduses

Java ja XML-i kombinatsioon võimaldab selget eristamist rakenduse loogika ja esituse vahel, muutes Androidi rakenduste arendamise, hooldamise ja kohandamise lihtsamaks.

3. Tegevused ja fragmendid moodustavad Androidi kasutajaliideste ehitusplokid

Tegevus on tavaliselt üksik ekraan, mida kasutaja näeb seadmes korraga. Rakendusel on tavaliselt mitu tegevust, ja kasutaja vahetab nende vahel.

Tegevused kui ekraanid. Tegevused esindavad individuaalseid ekraane või lehti Androidi rakenduses. Neil on elutsükkel, mida haldab Androidi süsteem, koos meetoditega nagu onCreate(), onStart(), onResume(), onPause(), onStop() ja onDestroy(), mida arendajad saavad ületada, et kontrollida tegevuse käitumist erinevates etappides.

Fragmendid modulaarseks. Fragmendid on taaskasutatavad kasutajaliidese komponendid, mida saab kombineerida tegevustes, et luua keerukamaid ja paindlikumaid paigutusi. Fragmenteerimise peamised eelised hõlmavad:

  • Parandatud tugi erinevatele ekraanisuurustele ja orientatsioonidele
  • Lihtsam navigeerimismustrite, nagu vahekaartide või külgmenüüde, rakendamine
  • Parema koodi korralduse ja taaskasutatavuse saavutamine

Fragmendid omavad oma elutsüklit, mis on tihedalt seotud nende host-tegevuse elutsükliga. See võimaldab täiendavat kontrolli kasutajaliidese komponentide ja nende käitumise üle.

4. Teenused võimaldavad taustaprotsesside ja pikaajaliste toimingute teostamist

Teenused töötavad taustal ja neil ei ole kasutajaliidese komponente. Nad saavad teostada samu toiminguid nagu tegevused, kuid ilma kasutajaliideta.

Taustaprotsessimine. Teenused võimaldavad rakendustel teostada toiminguid taustal, isegi kui kasutaja ei suhtle aktiivselt rakendusega. See on hädavajalik selliste ülesannete jaoks nagu:

  • Suurte failide allalaadimine või üleslaadimine
  • Muusika esitamine
  • Andmete sünkroonimine kaugserveritega
  • Perioodiliste kontrollide või uuenduste teostamine

Teenuste tüübid:

  • Alustatud teenused: Komponendi poolt algatatud ja töötavad taustal lõpmatult
  • Sidus teenused: Pakuvad kliendi-serveri liidest komponentide suhtlemiseks teenusega
  • Intent teenused: Käsitlevad asünkroonseid päringuid eraldi töötlustehnil

Teenuseid tuleb hoolikalt hallata, et vältida liigset aku tühjenemist ja ressursikasutust. Android pakub mehhanisme nagu JobScheduler ja WorkManager, et aidata optimeerida taustategevusi.

5. Sisu pakkujad hõlbustavad andmete jagamist rakenduste vahel

Sisu pakkujad on liidesed andmete jagamiseks rakenduste vahel.

Struktureeritud andmete juurdepääs. Sisu pakkujad pakuvad standardiseeritud viisi struktureeritud andmete jagamiseks erinevate rakenduste vahel Androidi seadmes. Nad abstraktiseerivad aluseks oleva andmete salvestamise mehhanismi (nt SQLite andmebaas, failid) ja pakuvad ühtset liidest andmete pärimiseks, sisestamiseks, uuendamiseks ja kustutamiseks.

Peamised omadused:

  • URI-põhine andmeadressimine
  • Peenelt reguleeritud juurdepääsukontroll õiguste kaudu
  • Tugi keerukatele andmetüüpidele ja suhetele
  • Võime teavitada vaatlejaid andmete muutustest

Sisu pakkujaid kasutatakse laialdaselt Androidi süsteemis andmete jagamiseks, nagu kontaktid, kalendriüritused ja meediafailid. Kohandatud sisu pakkujad saavad luua, et turvaliselt ja tõhusalt avada rakenduse andmeid teistele rakendustele.

6. Ülekande vastuvõtjad võimaldavad rakendustel reageerida süsteemiülesetele sündmustele

Ülekande vastuvõtjad on Androidi rakendus süsteemiülese avaldamise/registreerimise mehhanismi, või täpsemalt, vaatleja mustri rakendamiseks.

Sündmustele reageerimise programmeerimine. Ülekande vastuvõtjad võimaldavad rakendustel reageerida süsteemiülesetele sündmustele või teiste rakenduste kohandatud sündmustele. See võimaldab lõdvalt seotud suhtlemist erinevate Androidi süsteemi komponentide ja kolmandate osapoolte rakenduste vahel.

Tavalised kasutusjuhtumid:

  • Reageerimine süsteemi sündmustele (nt käivitamine lõpetatud, aku madal, võrguühenduse muutused)
  • Rakendustevahelise suhtluse rakendamine
  • Taustategevuste või perioodiliste toimingute ajastamine

Ülekande vastuvõtjad saavad registreerida dünaamiliselt koodis või staatiliselt AndroidManifest.xml failis. Neid tuleks kasutada ettevaatlikult, et vältida tarbetut süsteemiressursside tarbimist ja võimalikke turvariske.

7. Androidi SDK pakub võimsaid tööriistu kasutajaliidese kujundamiseks, silumiseks ja testimiseks

Android pakub elegantset liidest, mille kaudu teie rakendus saab suhelda SQLite andmebaasiga.

Kohandatud tööriistakomplekt. Androidi SDK pakub rikkalikku tööriistade ja teekide komplekti rakenduste arendamiseks, sealhulgas:

  • Android Studio: Ametlik integreeritud arenduskeskkond (IDE)
  • Paigutuse redaktor: Visuaalne tööriist kasutajaliideste kujundamiseks
  • Emulaator: Virtuaalne seade rakenduste testimiseks ilma füüsilise riistvarata
  • Silur: Koodi probleemide tuvastamiseks ja parandamiseks
  • Profiler: Rakenduse jõudluse ja ressursikasutuse analüüsimiseks
  • Testimise raamistikud: Üksustestimiseks, integreerimistestimiseks ja kasutajaliidese testimiseks

Need tööriistad sujuvdavad arendusprotsessi, parandavad koodi kvaliteeti ja aitavad tagada ühtse kasutajakogemuse erinevates seadmetes.

8. Õige lõimimine ja asünkroonne programmeerimine on reageerivate rakenduste jaoks hädavajalikud

Androidi meeskond leidis, et kasutajad ei peaks mälu haldama ja on selle vastutuse delegeerinud Tegevuse Halduse süsteemile.

Kasutajaliidese reageerimisvõime. Androidi rakendused peavad säilitama reageeriva kasutajaliidese, vältides pikaajalisi toiminguid põhiteemas. Selle saavutamiseks kasutatakse järgmisi tehnikaid:

  • AsyncTask: Lühikeste taustategevuste jaoks, mis teatavad tulemustest kasutajaliidese teemas
  • Lõim ja Handler: Keerukamate lõimimisstsenaariumide jaoks
  • Korraldused (Kotlinis): Lihtsustatud asünkroonseks programmeerimiseks
  • RxJava: Reaktiivseks programmeerimiseks ja keerukate asünkroonsete töövoogude jaoks

Mälu haldamine. Androidi Tegevuse Halduse süsteem haldab mälu eraldamist ja vabastamist, kuid arendajad peavad siiski olema ettevaatlikud võimalike mälu leketega ja tõhusa ressursikasutusega. See hõlmab tegevuste ja fragmentide elutsüklite nõuetekohast haldamist, samuti taustalõimede ja teenuste ettevaatlikku kasutamist.

9. Võrgustamine ja veebiteenuste integreerimine laiendavad rakenduste võimalusi

Võrgustamine on üks mobiiliarenduse põhitegevusi.

HTTP suhtlemine. Android pakub mitmeid API-sid võrgu suhtlemiseks, sealhulgas:

  • HttpURLConnection: Kergekaaluline, madala taseme API HTTP päringute jaoks
  • Volley: Kõrgema taseme võrgu teek, mis lihtsustab tavaliste mustrite rakendamist
  • Retrofit: Tüübi ohutu HTTP klient Androidi ja Java jaoks

Parimad tavad:

  • Tehke alati võrgu toimingud taustalõimedes
  • Rakendage nõuetekohane veahaldus ja uuesti proovimise loogika
  • Kasutage vahemälu, et parandada jõudlust ja vähendada andmete kasutamist
  • Kaaluge turvalisuse aspekte (nt HTTPS-i kasutamine, sertifikaadi kinnitamine)

Veebiteenuste ja API-de integreerimine võimaldab Androidi rakendustel pääseda ligi ja manipuleerida kaugandmetega, sünkroonida teavet seadmete vahel ja kasutada pilvepõhiseid funktsioone.

10. Rakenduse vidinad pakuvad koduekraanil kiiret teavet

Androidis on mini rakenduse vaadete kuvamine, mis on integreeritud teiste rakendustega, kõige tavalisem juhtum koduekraanil, väga oluline ja kasulik funktsioon.

Kasutajate kaasatuse suurendamine. Rakenduse vidinad võimaldavad arendajatel laiendada oma rakenduse funktsionaalsust seadme koduekraanile, pakkudes kasutajatele kiiret juurdepääsu olulisele teabele või funktsioonidele ilma täisrakendust avamata.

Vidinate rakendamine:

  • Looge paigutuse XML-fail, mis määratleb vidina välimuse
  • Rakendage AppWidgetProvider klass, et hallata vidina käitumist
  • Määratlege vidina omadused XML-i ressursifailis
  • Registreerige vidin AndroidManifest.xml failis

Rakenduse vidinad tuleb kujundada, arvestades jõudlust ja aku efektiivsust, kuna need uuendavad perioodiliselt ja töötavad taustal. Need peaksid pakkuma kasutajatele selget väärtust ja täiendama peamise rakenduse kogemust.

Last updated:

Review Summary

3.69 out of 5
Average of 100+ ratings from Goodreads and Amazon.

Androidi õppimine saab erinevaid arvustusi, keskmise hindega 3.68/5. Lugejad hindavad selle praktilist lähenemist, luues Twitteri-laadse rakenduse, et õpetada kontseptsioone. Paljud leiavad, et see on kasulik algajatele, kellel on Java teadmised. Siiski märgivad paljud arvustajad koodivigu, trükivigu ja aegunud teavet, eriti hilisemates peatükkides. Mõned kiidavad raamatu põhjalikku käsitlust Androidi alustest, samas kui teised seisavad silmitsi ebajärjekindluste ja puudulike selgitustega. Hoolimata nendest probleemidest soovitavad paljud seda siiski Androidi arendamise alguspunktina, väärtustades selle praktilist metoodikat.

Your rating:

About the Author

Marko Gargenta on kogenud Androidi arendaja ja õpetaja. Tõenäoliselt on tal taust arvutiteaduses või seotud valdkonnas, arvestades tema teadmisi mobiilirakenduste arendamisel. Gargenta õpetamisviis Androidi programmeerimises on praktiline, keskendudes reaalse rakenduse loomisele, et illustreerida kontseptsioone. Tema kirjutamisstiili iseloomustatakse kui selget ja hästi läbi mõeldud, eriti raamatu varasemates peatükkides. Marakana, koolitusettevõtte asutajana, omab Gargenta kogemusi haridusliku sisu loomisel arendajatele. Tema töö peegeldab sügavat arusaamist Androidi arhitektuurist ja parimatest praktikatest rakenduste arendamisel.

0:00
-0:00
1x
Dan
Andrew
Michelle
Lauren
Select Speed
1.0×
+
200 words per minute
Create a free account to unlock:
Requests: Request new book summaries
Bookmarks: Save your favorite books
History: Revisit books later
Ratings: Rate books & see your ratings
Try Full Access for 7 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
All summaries are free to read in 40 languages
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 10
📜 Unlimited History
Free users are limited to 10
Risk-Free Timeline
Today: Get Instant Access
Listen to full summaries of 73,530 books. That's 12,000+ hours of audio!
Day 4: Trial Reminder
We'll send you a notification that your trial is ending soon.
Day 7: Your subscription begins
You'll be charged on Mar 1,
cancel anytime before.
Consume 2.8x More Books
2.8x more books Listening Reading
Our users love us
50,000+ readers
"...I can 10x the number of books I can read..."
"...exceptionally accurate, engaging, and beautifully presented..."
"...better than any amazon review when I'm making a book-buying decision..."
Save 62%
Yearly
$119.88 $44.99/year
$3.75/mo
Monthly
$9.99/mo
Try Free & Unlock
7 days free, then $44.99/year. Cancel anytime.
Settings
Appearance
Black Friday Sale 🎉
$20 off Lifetime Access
$79.99 $59.99
Upgrade Now →