Ideea platformei Android a fost surprinzătoare și continuă să uimească și, desigur, atrage din ce în ce mai mulți programatori în fiecare zi. Arhitectura deosebit de deschisă, care vă permite să schimbați totul, chiar și aplicațiile standard.
Reface potențialul GPhone.
Să aruncăm o privire la ceea ce disting OHA în platforma Android:
Este adevărat, în calitate de dezvoltator puteți face totul, de la trimiterea mesajelor scurte cu doar două rânduri de cod, înainte de a înlocui chiar ecranul de pornire al dispozitivului. Este ușor să creați și să personalizați complet sistemul de operare timp de câteva săptămâni fără a oferi utilizatorilor mai multe aplicații standard Google.
"Android este construit pe un kernel deschis Linux și utilizează o mașină virtuală personalizată care a fost creată pentru optimizarea resurselor de memorie și hardware într-un mediu mobil". Android are cod sursă deschisă, poate integra noi tehnologii moderne în momentul în care acestea apar. Platforma va continua să evolueze pe măsură ce dezvoltatorii dezvoltă noi aplicații. "
Aici Google vorbește despre așa-numita mașină virtuală Dalvik (DalvikVM), care se bazează pe registre. O mașină virtuală proiectată și scrisă de Dan Bornstein și de alți ingineri Google este o parte importantă a platformei Android. În cuvintele "bazate pe registre", găsim prima diferență față de mașinile virtuale Java (JVM), care se bazează pe stiva. Consultați "Dalvik.equals (Java) == FALSE" - un capitol pentru mai multe detalii despre această problemă.
Toate aplicațiile sunt egale
Din nou, toate astea sunt adevărate. Dezvoltatorii pot personaliza pe deplin dispozitivul Android. sistem de comunicare Android se bazează pe așa-numitele obiective, care sunt doar o linie (probabil cu unii parametri), care determină acțiunile care trebuie procesate. Un exemplu de acest lucru este: "android.provider.Telephony.SMS_RECEIVED"
Puteți să ascultați acest Intent scriind 5 linii de definiții. Apoi se va ajunge la sistem că există mai mult de o aplicație care dorește să proceseze acest Intenție și va cere utilizatorului să aleagă ce aplicație va gestiona acest Intent.
Distrugerea restricțiilor aplicațiilor
Dezvoltarea rapidă și ușoară a aplicațiilor
„Android oferă acces la o gamă largă de biblioteci și instrumente care pot fi utilizate pentru a crea aplicații complexe utile. De exemplu, Android permite dezvoltatorilor să obțină locația dispozitivului și permite dispozitivelor să comunice între ele. În plus, Android include un set complet de instrumente care au fost create de la zero, împreună cu platforma, oferind dezvoltatorilor performanțe ridicate și o înțelegere profundă a aplicațiilor lor ".
După revoluția Web 2.0, crearea de aplicații bogate în informații în câteva minute nu mai este o iluzie. Android a adus în evoluție viteze necunoscute. Permiteți-mi să arăt un exemplu: recent am dat peste cuvântul inteligent "DrivingDirections" în documentația android.
Implementarea Google de DrivingDirections în Android.
Procesul de dezvoltare a unei aplicații în imaginea de mai sus a durat aproximativ o oră și jumătate! (Inclusiv o interfață simplă de utilizator și toate imaginile pe care le vedeți). A fost posibilă crearea unei astfel de aplicații complexe pe orice altă platformă mobilă? - Nu.
În plus, definiția poziției curente a dispozitivului prin GPS cu un număr foarte mic de linii ar putea fi adăugată la această aplicație. Google accentuează puterea navigației Android pe baza serviciilor de localizare. Hărțile Google sunt atât de clare în Android, de parcă ar fi proiectate numai pentru Android. Puteți integra, mări și trage harta, adăugând doar trei (!) Caractere în codul java al aplicației standard Android și trei linii de cod XML. Alte caracteristici bune care sunt confortabile cu Android sunt animațiile și redarea muzicii. Începând cu versiunea Android SDK-ul conține m5 funcții pentru înainte și înapoi geocodare, și, în plus față de MP3, joc: OGG, MIDI și alte formate.
Din păcate, dezvoltatorii au avut de a face cu nu este pe deplin puse în aplicare de previzualizare-SDK (prima versiune, construi „m3-RC20“), în cazul în care unele dintre componentele-cheie ale SDK au fost prost chiar și înregistrate. A existat o lipsă acută de documentație, o declarație de la Google:
"Dacă nu a fost documentat - încă nu pretinde că lucrează."
Un alt bug enervant a fost sunetul volatil al emulatorului, care, a fost spus, a fost fixat in constructorul "m3-rc37a" cam 4 saptamani mai tarziu, dar sa intamplat in unele instalatii pana la m5.
De ce "Dalvik"? - O mașină virtuală pe nume Dalvik a fost numită Bornstein în cinstea satului de pescuit Dalvik din Islanda, unde locuiau unii dintre strămoșii săi.
Dalvik este numele mașinii virtuale Android. Aceasta este o mașină virtuală numai pentru interpret, care execută fișiere în formatul Dalvik Executable (* .dex), un format optimizat pentru memorie eficientă și alocat de memoria de execuție. O mașină virtuală se bazează pe un registru și poate executa clase compilate de compilatorul limbajului Java, care au fost convertite în format nativ utilizând instrumentul "dx" inclus. VM rulează pe kernelul Linux 2.6 pentru a susține funcționalitatea (cum ar fi gestionarea firului și gestionarea memoriei de nivel scăzut). DalvikVM a fost, de asemenea, optimizat pentru a lucra în mai multe instanțe ale unei clase cu memorie redusă. Multiple VM-uri protejează aplicația de a fi distrusă de o altă aplicație distrusă.
JavaVM, care poate fi găsit pe aproape toate computerele desktop în acest moment, este o mașină virtuală (VM) bazată pe stack. DalvikVM, pe de altă parte, este un registru bazat pe caz, deoarece procesoarele mobile sunt optimizate pentru execuția bazată pe registru. De asemenea, bazându-se pe registru, VM-urile permit un timp de execuție mai rapid datorită programelor care sunt mai mult după difuzare.