Glosarium Platform Android

Lihat daftar di bawah untuk mempelajari terminologi dasar Android Open Source Project (AOSP). Berikut adalah sumber lain untuk definisi istilah kunci:

Lihat Pengodean dengan Hormat untuk contoh terminologi yang digunakan dan dihindari untuk ekosistem yang lebih inklusif.

Aplikasi

.apk file
File paket aplikasi Android. Setiap aplikasi Android dikompilasi dan dikemas dalam satu file yang mencakup semua kode aplikasi (file .dex), sumber daya, aset, dan file manifes. File paket aplikasi dapat memiliki nama apa pun tetapi harus menggunakan ekstensi .apk . Misalnya: myExampleAppname.apk . Untuk kenyamanan, file paket aplikasi sering disebut sebagai ".apk".

Terkait: Aplikasi .

Tindakan
Deskripsi tentang sesuatu yang ingin dilakukan oleh pengirim Intent . Tindakan adalah nilai string yang ditetapkan ke Intent. String tindakan dapat ditentukan oleh Android atau oleh pengembang pihak ketiga. Misalnya, android.intent.action.VIEW untuk URL Web, atau com.example.rumbler.SHAKE_PHONE untuk aplikasi khusus untuk menggetarkan telepon.

Terkait: Niat .

Aktivitas
Satu layar dalam aplikasi, dengan mendukung kode Java, berasal dari kelas Activity . Paling umum, suatu aktivitas tampak diwakili oleh jendela layar penuh yang dapat menerima dan menangani peristiwa UI dan melakukan tugas-tugas kompleks, karena Jendela yang digunakannya untuk merender jendelanya. Meskipun Aktivitas biasanya layar penuh, itu juga bisa mengambang atau transparan.
Aplikasi
Dari perspektif komponen, aplikasi Android terdiri dari satu atau beberapa aktivitas, layanan, pendengar, dan penerima maksud. Dari perspektif file sumber, aplikasi Android terdiri dari kode, sumber daya, aset, dan satu manifes. Selama kompilasi, file-file ini dikemas dalam satu file yang disebut file paket aplikasi (.apk).

Terkait: .apk , Aktivitas

Penerima siaran
Kelas aplikasi yang mendengarkan Intent yang disiarkan, bukan dikirim ke aplikasi/aktivitas target tunggal. Sistem mengirimkan Intent siaran ke semua penerima siaran yang tertarik, yang menangani Intent secara berurutan.

Terkait: Intent , Filter Intent .

Penyedia konten
Lapisan abstraksi data yang dapat Anda gunakan untuk mengekspos data aplikasi Anda ke aplikasi lain dengan aman. Penyedia konten dibuat di kelas ContentProvider , yang menangani string kueri konten dari format tertentu untuk mengembalikan data dalam format tertentu. Lihat topik Penyedia Konten untuk informasi selengkapnya.

Terkait: Penggunaan URI di Android

Dialog
Sebuah jendela mengambang yang bertindak sebagai bentuk ringan. Dialog dapat memiliki kontrol tombol saja dan dimaksudkan untuk melakukan tindakan sederhana (seperti pilihan tombol) dan mungkin mengembalikan nilai. Dialog tidak dimaksudkan untuk bertahan di tumpukan riwayat, berisi tata letak yang kompleks, atau melakukan tindakan yang kompleks. Android menyediakan dialog sederhana default untuk Anda dengan tombol opsional, meskipun Anda dapat menentukan tata letak dialog Anda sendiri. Kelas dasar untuk dialog adalah Dialog .

Terkait: Aktivitas .

Maksud
Objek pesan yang dapat Anda gunakan untuk meluncurkan atau berkomunikasi dengan aplikasi/aktivitas lain secara asinkron. Objek Intent adalah turunan dari Intent . Ini mencakup beberapa bidang kriteria yang dapat Anda berikan, untuk menentukan aplikasi/aktivitas apa yang menerima Intent dan apa yang dilakukan penerima saat menangani Intent. Kriteria yang tersedia meliputi tindakan yang diinginkan, kategori, string data, tipe data MIME, kelas penanganan, dan lainnya. Aplikasi mengirimkan Intent ke sistem Android, bukan mengirimkannya langsung ke aplikasi/aktivitas lain. Aplikasi dapat mengirim Intent ke aplikasi target tunggal atau dapat mengirimkannya sebagai siaran, yang pada gilirannya dapat ditangani oleh beberapa aplikasi secara berurutan. Sistem Android bertanggung jawab untuk menyelesaikan penerima terbaik yang tersedia untuk setiap Intent, berdasarkan kriteria yang disediakan dalam Intent dan Filter Intent yang ditentukan oleh aplikasi lain. Untuk informasi selengkapnya, lihat Intent dan Filter Intent .

Terkait: Filter Intent , Penerima Siaran .

Filter Niat
Objek filter yang dideklarasikan oleh aplikasi dalam file manifesnya, untuk memberi tahu sistem jenis Intent apa yang ingin diterima oleh setiap komponennya dan dengan kriteria apa. Melalui filter maksud, aplikasi bisa mengekspresikan minat pada tipe data tertentu, tindakan maksud, format URI, dan sebagainya. Saat menyelesaikan Intent, sistem mengevaluasi semua filter intent yang tersedia di semua aplikasi dan meneruskan Intent ke aplikasi/aktivitas yang paling cocok dengan Intent dan kriteria. Untuk informasi selengkapnya, lihat Intent dan Filter Intent .

Terkait: Intent , Penerima Siaran .

Sumber daya
Komponen aplikasi nonprogram yang berada di luar kode aplikasi yang dikompilasi, tetapi dapat dimuat dari kode aplikasi menggunakan format referensi yang terkenal. Android mendukung berbagai jenis sumber daya, tetapi sumber daya aplikasi tipikal akan terdiri dari string UI, komponen tata letak UI, grafik atau file media lainnya, dan seterusnya. Aplikasi menggunakan sumber daya untuk mendukung pelokalan secara efisien serta beragam profil dan status perangkat. Misalnya, aplikasi akan menyertakan kumpulan sumber daya terpisah untuk setiap jenis perangkat atau lokal yang didukung, dan dapat menyertakan sumber daya tata letak yang khusus untuk orientasi layar saat ini (lanskap atau potret). Untuk informasi selengkapnya tentang sumber daya, lihat Sumber Daya dan Aset . Sumber daya aplikasi selalu disimpan di subfolder res/* proyek.
Melayani
Objek kelas Service yang berjalan di latar belakang (tanpa kehadiran UI) untuk melakukan berbagai tindakan persisten, seperti memutar musik atau memantau aktivitas jaringan.

Terkait: Aktivitas

URI di Android
Android menggunakan string URI (uniform resource identifier) ​​sebagai dasar untuk meminta data di penyedia konten (seperti untuk mengambil daftar kontak) dan untuk meminta tindakan dalam Intent (seperti membuka halaman Web di browser). Skema dan format URI dispesialisasikan menurut jenis penggunaan, dan aplikasi dapat menangani skema dan string URI tertentu dengan cara apa pun yang diinginkannya. Beberapa skema URI dicadangkan oleh komponen sistem. Misalnya, permintaan data dari penyedia konten harus menggunakan content:// . Dalam Intent, URI yang menggunakan skema http:// akan ditangani oleh browser.

Membangun

adb
Android Debug Bridge, aplikasi debug baris perintah yang disertakan dengan SDK. Ini menyediakan alat untuk menelusuri perangkat, menyalin alat pada perangkat, dan meneruskan port untuk debugging. Jika Anda mengembangkan di Android Studio, adb terintegrasi ke dalam lingkungan pengembangan Anda. Lihat Android Debug Bridge untuk informasi selengkapnya.
proyek Android
Repositori Git pada host Android Gerrit. Lihat Alat Kontrol Sumber > Gerrit untuk informasi selengkapnya.
Buat sidik jari
Sidik jari build adalah string unik yang dapat dibaca manusia yang berisi informasi pabrikan yang dikeluarkan untuk setiap build. Lihat Memahami membangun sidik jari untuk informasi selengkapnya.
Git
Alat kontrol sumber yang digunakan oleh Android yang secara historis beroperasi pada satu repositori Git. Digunakan bersama dengan Repo untuk beberapa repositori Git. Lihat Alat Kontrol Sumber > Git untuk informasi selengkapnya.
Cabang Git - kanonik
Versi berbeda untuk setiap repositori Git, seperti android-11.0.0_r1 , ditemukan di cs.android.com/android/platform/superproject/+/android-11.0.0_r1 . Lihat Git Branching - Branches in a Nutshell untuk informasi lebih lanjut.
Cabang Git - lokal
Cabang sementara di klien Repo saat ini untuk membuat perubahan kode, dimulai dengan repo start branch-name . memerintah. jalur perkembangan yang aktif. Komit terbaru pada cabang disebut sebagai ujung cabang itu.
Repositori Git
Kadang-kadang disebut sebagai proyek, ini adalah bagian dari basis kode yang mewakili komponen atau jenis perangkat tertentu, seperti frameworks/base atau platform/packages/apps/Car/Media .
File manifes
File XML yang menjelaskan pengelompokan repositori Git per cabang, revisi Git untuk memeriksa repositori tersebut, dan tata letaknya pada sistem file. File XML ini, biasanya bernama default.xml , dikaitkan dengan cabang Repo dan menjelaskan repositori Git dan cabang Git yang diperiksa saat Anda menginisialisasi dan menyinkronkan cabang Repo. File ini mendefinisikan berbagai repositori Git yang harus diambil oleh alat Repo ke dalam checkout klien Repo untuk membangun produk (seperti Android Automotive OS). Lihat semua manifes di android.googlesource.com/platform/manifest/+refs . Lihat manifes default yang disertakan dalam file AndroidManifest untuk menarik file platform Android (AOSP) di android.googlesource.com/platform/manifest/+/refs/heads/master/default.xml . Lihat file AndroidManifest.xml untuk informasi aplikasi dan repo Manifest Format untuk pengembangan platform.
Pembaruan melalui udara (OTA)
Perangkat Android di lapangan dapat menerima dan menginstal pembaruan over-the-air (OTA) ke sistem, perangkat lunak aplikasi, dan aturan zona waktu. Lihat Pembaruan OTA untuk informasi lebih lanjut.
repo
Pembungkus di sekitar Git untuk memungkinkan pengoperasian yang lebih mudah di beberapa repositori Git. Ini mengumpulkan dan mengelola banyak repositori Git sebagai checkout tunggal atau basis kode. Lihat Alat Kontrol Sumber > Repo untuk informasi selengkapnya.
Cabang repo
Kumpulan repositori Git yang diambil dalam file AndroidManifest yang mewakili versi (build) basis kode Android, seperti android11-gsi atau aosp-android-games-sdk , diunduh melalui repo init dan perintah repo sync . Lihat deskripsi file Manifes untuk tautan ke semua file manifes dan gunakan https://cs.android.com/ untuk mencari build-nya.
uprev
Secara umum, uprev memperbarui subproyek konstituen dari proyek yang lebih besar ke versi yang lebih baru. Uprev mengubah tingkat revisi ke versi tambahan berikutnya atau ke versi terbaru yang tersedia. Dalam kasus paket HIDL, untuk mempertahankan ekstensibilitas yang kompatibel ke belakang tingkat paket , uprev versi minor memperbarui paket baru ke versi minor yang lebih tinggi sambil mempertahankan nama dan versi mayor yang sama dengan paket lama. Dalam hal konfigurasi Bootloader , uprev memperbarui dukungan versi header boot ke versi terbaru.

grafis

Kanvas
Permukaan gambar yang menangani pengomposisian bit aktual terhadap Bitmap atau objek Permukaan . Ini memiliki metode untuk menggambar komputer standar bitmap, garis, lingkaran, persegi panjang, teks, dan sebagainya, dan terikat ke Bitmap atau Surface. Kanvas adalah cara termudah dan termudah untuk menggambar objek 2D di layar. Kelas dasarnya adalah Canvas .

Terkait: Drawable , OpenGL ES , Surface .

Dapat digambar
Sumber daya visual yang dikompilasi yang dapat digunakan sebagai latar belakang, judul, atau bagian lain dari layar. Sumber daya dapat digambar biasanya dimuat ke elemen UI lain, misalnya sebagai gambar latar. Sumber daya dapat digambar tidak dapat menerima peristiwa, tetapi menetapkan berbagai properti lain seperti "status" dan penjadwalan, untuk mengaktifkan subkelas seperti objek animasi atau pustaka gambar. Banyak objek yang dapat digambar dimuat dari file sumber daya yang dapat digambar — file xml atau bitmap yang menjelaskan gambar. Sumber daya yang dapat digambar dikompilasi ke dalam subkelas android.graphics.drawable . Untuk informasi selengkapnya tentang sumber daya dapat digambar dan sumber daya lainnya, lihat Sumberdaya .

Terkait: Sumber Daya , Kanvas

Sumber Daya Tata Letak
File XML yang menjelaskan tata letak layar Aktivitas.

Terkait: Sumber Daya

Gambar sembilan-tambalan / 9-tambalan / Ninepatch
Sumber daya bitmap yang dapat diubah ukurannya yang dapat digunakan untuk latar belakang atau gambar lain di perangkat. Lihat Gambar Merenggang Sembilan-Patch untuk informasi lebih lanjut.

Terkait: Sumber daya .

OpenGL ES
Android menyediakan library OpenGL ES untuk rendering 3D yang dipercepat perangkat keras. Untuk rendering 2D, Canvas adalah opsi yang lebih sederhana." OpenGL ES tersedia di Android Native Development Kit (NDK) untuk kemudahan penggunaan. Paket android.opengl dan javax.microedition.khronos.opengles mengekspos fungsionalitas OpenGL ES.

Terkait: Kanvas , Permukaan

Permukaan
Objek bertipe Surface mewakili blok memori yang digabungkan ke layar. Surface menampung objek Canvas untuk menggambar, dan menyediakan berbagai metode pembantu untuk menggambar layer dan mengubah ukuran permukaan. Anda tidak boleh menggunakan kelas ini secara langsung; gunakan SurfaceView sebagai gantinya.

Terkait: Kanvas

Tampilan Permukaan
Objek Tampilan yang membungkus Permukaan untuk menggambar, dan memaparkan metode untuk menentukan ukuran dan formatnya secara dinamis. SurfaceView menyediakan cara untuk menggambar secara independen dari utas UI untuk operasi intensif sumber daya (seperti game atau pratinjau kamera), tetapi akibatnya menggunakan memori ekstra. SurfaceView mendukung grafis Canvas dan OpenGL ES. Kelas dasarnya adalah SurfaceView .

Terkait: Permukaan

Tema
Satu set properti (ukuran teks, warna latar belakang, dan sebagainya) digabungkan bersama untuk menentukan berbagai pengaturan tampilan default. Android menyediakan beberapa tema standar, terdaftar di R.style (dimulai dengan "Theme_").
Melihat
Objek yang menggambar ke area persegi panjang di layar dan menangani klik, penekanan tombol, dan peristiwa interaksi lainnya. Tampilan adalah kelas dasar untuk sebagian besar komponen tata letak layar Aktivitas atau Dialog (kotak teks, jendela, dan sebagainya). Ia menerima panggilan dari objek induknya (lihat ViewGroup ) untuk menggambar dirinya sendiri, dan menginformasikan objek induknya tentang di mana dan seberapa besar ia ingin menjadi (yang mungkin atau mungkin tidak dihormati oleh induknya). Untuk informasi lebih lanjut, lihat View .

Terkait: Lihat Hirarki , ViewGroup , Widget

Lihat Hirarki
Susunan objek View dan ViewGroup yang mendefinisikan antarmuka pengguna untuk setiap komponen aplikasi. Hirarki terdiri dari grup tampilan yang berisi satu atau beberapa tampilan turunan atau grup tampilan. Anda bisa mendapatkan representasi visual dari hierarki tampilan untuk debugging dan pengoptimalan dengan menggunakan Hierarchy Viewer yang disertakan dengan Android SDK.

Terkait: Lihat , ViewGroup

LihatGrup
Objek penampung yang mengelompokkan sekumpulan tampilan turunan. Grup tampilan bertanggung jawab untuk memutuskan di mana tampilan anak diposisikan dan seberapa besar mereka dapat, serta memanggil masing-masing untuk menggambar sendiri bila perlu. Beberapa grup tampilan tidak terlihat dan hanya untuk tata letak, sementara yang lain memiliki UI intrinsik (misalnya, kotak daftar bergulir). Semua grup tampilan ada dalam paket widget , tetapi perluas ViewGroup .

Terkait: Lihat , Lihat Hirarki

widget
Salah satu dari kumpulan subkelas View yang diimplementasikan sepenuhnya yang merender elemen formulir dan komponen UI lainnya, seperti kotak teks atau menu popup. Karena widget sepenuhnya diimplementasikan, ia menangani pengukuran dan menggambar itu sendiri dan merespons peristiwa layar. Semua widget ada dalam paket android.widget .
Jendela
Dalam aplikasi Android, objek yang diturunkan dari kelas abstrak Window yang menetapkan elemen-elemen dari jendela generik, seperti tampilan dan nuansa (teks bilah judul, lokasi dan konten menu, dan sebagainya). Dialog dan Aktivitas menggunakan implementasi kelas ini untuk membuat jendela. Anda tidak perlu mengimplementasikan kelas ini atau menggunakan windows di aplikasi Anda.

Platform

Android Runtime (ART) dan Dalvik
Android runtime (ART) adalah runtime terkelola yang digunakan oleh aplikasi dan beberapa layanan sistem di Android. Waktu proses Android (ART) adalah waktu proses default untuk perangkat yang menjalankan Android 5.0 (API level 21) dan yang lebih tinggi. ART dan pendahulunya Dalvik awalnya dibuat khusus untuk Android Open Source Project. ART sebagai runtime mengeksekusi format Dalvik Executable dan spesifikasi bytecode Dex. ART dan Dalvik adalah runtime yang kompatibel yang menjalankan bytecode Dex, jadi aplikasi yang dikembangkan untuk Dalvik akan berfungsi saat dijalankan dengan ART.
baris kode
Codeline berisi rilis produk perangkat lunak. Ini terdiri dari satu atau lebih cabang dari satu atau lebih repositori, yang semuanya sering dalam pengembangan aktif sekaligus. Codeline adalah titik agregasi dan target untuk rilis. Untuk informasi selengkapnya tentang codeline, lihat Manajemen Perangkat Lunak Android .
.dex file
File kode aplikasi Android yang dikompilasi.

Program Android dikompilasi ke dalam file .dex (Dalvik Executable), yang kemudian di-zip menjadi satu file .apk di perangkat. File .dex dapat dibuat dengan menerjemahkan aplikasi terkompilasi yang ditulis dalam bahasa pemrograman Java secara otomatis.

Uji

Artefak
Artefak adalah log terkait build yang memungkinkan pemecahan masalah lokal. Log ini dapat diakses langsung dari Gerrit saat melihat daftar perubahan Anda. Gulir ke bawah ke Presubmit Status dan klik tautan Build merah untuk melihat atau mengunduh file build_error.log terkait. Anda juga bisa mendapatkan artefak ini dari server Android Continuous Integration pusat di ci.android.com/ dengan mengklik ikon Unduh (panah bawah) untuk target dan build. Untuk informasi selengkapnya tentang cara menemukan artefak, lihat Android Continuous Integration .
CDD
Dokumen Definisi Kompatibilitas Android (CDD) menyebutkan persyaratan yang harus dipenuhi agar perangkat Anda kompatibel dengan versi Android terbaru. Agar dianggap kompatibel dengan Android, implementasi perangkat HARUS memenuhi persyaratan yang disajikan dalam Definisi Kompatibilitas ini, termasuk dokumen apa pun yang digabungkan dengan referensi. Untuk informasi selengkapnya tentang CDD, lihat Dokumen Definisi Kompatibilitas Android .
CTS
Compatibility Test Suite (CTS) adalah rangkaian pengujian untuk memastikan kebenaran API dan spesifikasi yang tercantum dalam CDD. Ini tersedia sebagai sumber dalam AOSP dan untuk diunduh sebagai biner. Untuk informasi selengkapnya, lihat Compatibility Test Suite .
Pemverifikasi CTS
Compatibility Test Suite Verifier (CTS Verifier) ​​adalah suplemen untuk CTS. CTS Verifier menyediakan pengujian untuk API dan fungsi yang tidak dapat diuji pada perangkat stasioner tanpa input manual (misalnya kualitas audio, akselerometer, dll). Untuk informasi selengkapnya, lihat Menggunakan Pemverifikasi CTS .
Men-debug
Debugging membutuhkan pencarian dan perbaikan kesalahan dalam kode platform Android, baik dalam fitur atau pengujiannya. Untuk informasi selengkapnya, lihat Men- debug Kode Platform Android Asli
GoogleTest (GTest)
GTest adalah kerangka kerja pengujian dan mocking C++ Google. Binari GTest biasanya mengakses lapisan abstraksi tingkat rendah atau melakukan IPC mentah terhadap berbagai layanan sistem. Karena itu, pendekatan pengujian untuk Gtest biasanya digabungkan dengan layanan yang sedang diuji. Temukan kodenya di github.com/google/googletest dan dokumentasi di google.github.io/googletest .
Tes instrumentasi
Pengujian instrumentasi menyediakan lingkungan eksekusi pengujian khusus seperti yang diluncurkan oleh perintah am instrument , di mana proses aplikasi yang ditargetkan dimulai ulang dan diinisialisasi dengan konteks aplikasi dasar, dan thread instrumentasi dimulai di dalam mesin virtual proses aplikasi. Untuk informasi lebih lanjut, lihat Tes Instrumentasi .
Logcat
Logcat adalah alat baris perintah yang membuang log pesan sistem, termasuk pelacakan tumpukan saat perangkat memunculkan kesalahan dan pesan yang telah Anda tulis dari aplikasi dengan kelas Log . Untuk informasi selengkapnya, lihat alat baris perintah Logcat .
Pencatatan
Logging di Android rumit karena campuran standar yang digunakan yang digabungkan dalam logcat . Untuk detail tentang standar utama yang digunakan, lihat Memahami Pencatatan .
Gabungkan konflik
Konflik penggabungan terjadi ketika dua atau lebih versi file yang sama tidak dapat lagi digabungkan secara otomatis oleh server build Android. Ini biasanya memerlukan pengeditan file secara manual untuk menyelesaikan semua pembaruan yang bertentangan.
Tes prakirim dan pascakirim
Tes pra-pengiriman digunakan untuk mencegah kegagalan diperkenalkan ke kernel umum. Hasil tidak tersedia untuk umum saat ini.

Pengujian pascapengiriman Android dilakukan saat patch baru di-commit ke cabang kernel umum. Dengan memasukkan aosp_kernel sebagai nama cabang parsial, Anda dapat melihat daftar cabang kernel dengan hasil yang tersedia. Misalnya, hasil untuk `android-mainline` dapat ditemukan di sini .
Tradefed
Rangkaian uji Trade Federation (Tradefed atau TF untuk jangka pendek) adalah kerangka pengujian berkelanjutan yang dirancang untuk menjalankan pengujian pada perangkat Android. Misalnya, Tradefed digunakan untuk menjalankan CTS dan VTS. Untuk informasi lebih lanjut, lihat Tinjauan Federasi Perdagangan .
VTS
Android Vendor Test Suite (VTS) menyediakan fungsionalitas ekstensif untuk pengujian Android, mempromosikan proses pengembangan yang digerakkan oleh pengujian, dan mengotomatiskan pengujian kernel HAL dan OS. Untuk informasi lebih lanjut, lihat Vendor Test Suite (VTS) dan Infrastruktur .