Lohjangan salah.., ini salah satu syarat agar kita gak lelah atau ngantuk saat membuat aplikasi tersebut. - nih yang Perlu disiapin software aplikasinya : 1.Viirtual box - download disini 2.Genymotion - download disini , tapi harus sign up dulu (buat akun), klo mau Langsung conect bisa pakai yang file OVA Genymotion - download disini
HargaRp 3.999.000. Spesifikasi Oppo F5. Jaringan 3G HSDPA, 4G LTE , Cat6 600/50 Mbps. SIM Dual SIM, Nano - SIM. Dimensi 7.6 mm, Bahan : Full Metal. Fitur IP68 ( Dust & water resistant ) Layar 5,7 inchi IPS LCD Capacitive ,1080 x 2160 pixels, Full View Screen. Pelindung Layar Gorilla Glass 5. Sistem Operasi Android v7.1 Nougat , Color OS 3.0.
Sebelummemulai membuat aplikasi Android, pertama-tama Anda harus menyiapkan alat tempurnya, berikut adalah alat yang wajib Anda gunakan untuk membuat aplikasi Android. Cara membuat aplikasi dengan Android Studio harus melalui step diantaranya adalah Install Aplikasi JDK, Install aplikasi Android studio, buat struktur project, membuat linier layout, membuat relative layout.
Caradual boot windows dan android di PC- Untuk membuat dual boot windows dan android kita perlu memanfaatkan Remix OS yang merupakan fork OS Android yang diperuntukan PC.Hasil dari Remix OS tersebut akan mirip denngan Windows di PC yang dilengkapi dengan tombol aplikasi layaknya start menu, taskbar, minimize dan juga resize.
Androidx86 sangat cocok untuk kalian yang suka ngoprek isi Android karena memiliki banyak versi mulai dari versi Android 7.1, Android 8.1, Android 9.0. Namun sistem operasi ini juga dapat kalian gunakan untuk gaming. Dengan banyaknya versi yang tersedia memungkinkan kalian untuk memilih mana yang paling cocok dengan laptop atau PC di rumah.
Yapada tutorial kali ini kita akan membahas mengenai bagaimana caranya membuat sebuah tombol yang dapat di click menggunakan onclick listener pada button di aplikasi android. Nah Dalam pembahasan kali ini kita akan menggunakan android studio dan menggunakan bahasa java dalam proses pengerjaannya.. yuk langsung aja!
Dapatkanupdate keamanan lebih cepat. Perangkat Android sudah mendapatkan update keamanan rutin. Di Android 10, Anda akan mendapatkannya lebih cepat dan mudah. Dengan update sistem Google Play, perbaikan Keamanan dan Privasi penting kini dapat dikirim langsung ke ponsel Anda dari Google Play, seperti update aplikasi lainnya.
Caramembuat Dolphin MMJ support Android os Marshmallow* Dolphin MMJ mod : Apk Editor Pro :https://www.media
3 Phoenix OS. Official Phoenix OS. Phoenix OS adalah salah satu sistem operasi berbasis Android-PC terbaik yang dikenal dengan interfacenya yang friendly terutama pengguna Windows 10. OS ini mendukung penggunaan keyboard & mouse dengan cara yang sama seperti yang kita gunakan pada Windows, MacOs, atau Linux.
MengenalAndroid Studio; Cara Membuat Sebuah Aplikasi Android dengan Android Studio. 1. Download Android Studio versi terbaru; 2. Buat New Project; 3. Pelajari file. a. Layout files; b. File dan folder penting lainnya; 4. Uji Aplikasi Anda; 5. Coba buat "sesuatu" di aplikasi Anda; Kesimpulan
hfNqkcP. Sinkronkan Saja Mudahkan cara Anda menggunakan ponsel dan fokus pada hal-hal yang penting. Pilihlah OS yang dirancang untuk disinkronkan dengan Anda. ColorOS 12 berbasis Android 12 bereaksi secara real-time untuk membuat Anda tetap terhubung dan sesuai perintah. Sekilas tentang ColorOS 12 Desain inklusif Tampilan ramping, nuansa intuitif. Omoji1 Ekspresi diri yang menarik. Sambungan PC2 Sinkronisasi instan dan mudah. Kontrol Privasi3 Atur izin Anda dalam panggilan Anda. Desain inklusif Tampilan ramping, nuansa intuitif. Omoji1 Ekspresi diri yang menarik. Sambungan PC2 Sinkronisasi instan dan mudah. Kontrol Privasi3 Atur izin Anda dalam panggilan Anda. 1 /4 Halo, aku Nora! Siap menjelajahi ColorOS 12 bersama-sama?Saatnya untuk menemukan dunia baru yang penuh dengan keajabian. Sinkronkan dengan apa yang Anda bayangkan Bayangkan Temui OS terbaru favorit Anda. ColorOS 12 menghadirkan desain yang inklusif untuk semua, dirancang untuk merespons secara khusus untuk Anda. Pengalaman baru untuk hubungkan persona online dan digital Anda. Bahasa Desain Inklusif Siap untukOS revolusioner? OS Anda sebelumnya tidak pernah terlihat sebagus ini atau terasa begitu intuitif. Antarmuka ColorOS 12 yang sempurna dibuat untuk memenuhi kebutuhan Anda dengan fokus utama pada kegunaan. Desain yang sepenuhnya inklusif Nikmati sistem yang sangat adaptif dirancang untuk bekerja dengan 67 bahasa, karena teknologi terpintar itu bersifat global dan dibuat untuk semua. Fokus di tingkat selanjutnya ColorOS 12 menampilkan desain efisien yang menghilangkan segala gangguan, sehingga Anda dapat fokus pada hal-hal yang perlu Anda lakukan dengan lebih cepat, lebih halus, dan lebih mulus. Bahasa Desain Inklusif Siap untuk OS revolusioner? OS Anda sebelumnya tidak pernah terlihat sebagus ini atau terasa begitu intuitif. Antarmuka ColorOS 12 yang sempurna dibuat untuk memenuhi kebutuhan Anda dengan fokus utama pada kegunaan. Desain yang sepenuhnya inklusif Nikmati sistem yang sangat adaptif dirancang untuk bekerja dengan 67 bahasa, karena teknologi terpintar itu bersifat global dan dibuat untuk semua. Fokus di tingkat selanjutnya ColorOS 12 menampilkan desain efisien yang menghilangkan segala gangguan, sehingga Anda dapat fokus pada hal-hal yang perlu Anda lakukan dengan lebih cepat, lebih halus, dan lebih mulus. Ikon 3D Temui Ikon baru ColorOS 12 memanjakan mata dengan ikon aplikasi baru yang transparan. Menggabungkan elemen cahaya dan bayangan yang elegan untuk menciptakan ruang kedalaman dan perasaan, menghasilkan desain antarmuka paling indah yang pernah ada. Setiap desain diambil dari aslinya untuk membuat aplikasi langsung dikenali. Omoji Algoritme pengambilan wajah tingkat lanjut yang menggunakan 77 titik wajah dan 200+ elemen gaya untuk membuat refleksi ekspresi Anda secara real-time. Dengan opsi penyesuaian yang luar biasa, Omoji dari ColorOS 12 mampu terlihat dan ekspresif seperti Anda. Rancang Omoji Anda sekarang Tidak sekarang? Anda masih bisa melakukannya nanti. Rancang Omoji Anda sekarang Tidak sekarang? Anda masih bisa melakukannya nanti. Sinkronkan dengan apa yang Anda Inginkan ColorOS 12 membuat segalanya lebih mudah untuk melakukan pekerjaan Anda, dengan lebih banyak fitur dan fungsi yang dapat diaktifkan hanya dalam satu ketukan. Menjadikannya sebagai ekstensi virtual intuitif Anda. Koneksi PC Satu otak dengan berbagai layar Sinkronisasi yang mulus + Interaksi antara ponsel dan komputer Anda harus berjalan mulus. Memperkenalkan PC Connect untuk memudahkan sinkronisasi antar perangkat, layaknya satu otak di beberapa layar. Karena berbagi itu peduli + Bekerja, menjelajah, dan bermain di beberapa perangkat adalah hal normal yang baru. Jadikan hari-hari Anda lebih fleksibel dengan pemberitahuan dan clipboard bersama untuk kehidupan digital yang lebih lancar. Pindahkan dalam hitungan detik + Ingin mengedit file Anda atau berpindah dengan mudah antar perangkat? Dengan PC Connect, Anda dapat dengan mudah dan instan untuk edit dengan satu klik. 1 / 3 Warna untuk semua orang Advanced Color Vision Enhancement5pada ColorOS 12 mampu menyesuaikan nada warna untuk menciptakan lebih banyak perbedaan antara corak dan nada. 1 / 3 Warna untuk semua orang Advanced Color Vision Enhancement5 pada ColorOS 12 mampu menyesuaikan nada warna untuk menciptakan lebih banyak perbedaan antara corak dan nada. 2 / 3 Teks menjadi suara Lebih suka mendengarkan daripada membaca, atau hanya ingin menemukan cara untuk melakukan banyak tugas? Ketuk teks pada layar dan teks akan dibacakan untuk Anda. 2 / 3 Teks menjadi suara Lebih suka mendengarkan daripada membaca, atau hanya ingin menemukan cara untuk melakukan banyak tugas? Ketuk teks pada layar dan teks akan dibacakan untuk Anda. 3 / 3 Perbesar sesuai perintah Untuk menghindari ketegangan mata atau membuat teks yang lebih kecil lebih mudah dibaca, perbesaran satu ketukan ColorOS 12 mampu memperbesar teks sesuai perintah. 3 / 3 Perbesar sesuai perintah Untuk menghindari ketegangan mata atau membuat teks yang lebih kecil lebih mudah dibaca, perbesaran satu ketukan ColorOS 12 mampu memperbesar teks sesuai perintah. Phone Manager6 Asisten tak terlihat Anda Phone Manager dapat melakukan berbagai hal cerdas sehingga Anda tidak perlu melakukannya, mengoptimalkan kinerja dan membersihkan sampah tanpa hambatan. Perpanjang masa pakai baterai dan perluas ruang penyimpanan hanya dengan satu ketukan. Sinkronkan dengan apa yang Anda Pedulikan Kelola izin dalam sekejap, simpan rahasia Anda dengan aman, pertahankan masa pakai baterai lebih lama, dan nikmati kinerja yang mulus dan sangat mudah dengan ColorOS 12. Kontrol Privasi Privasi Anda, perintah Anda Privasi Anda, perintah Anda Dasbor Privasi Kelola semua izin dengan mudah dengan gambaran yang jelas di Dasbor Privasi. Terganggu dengan aplikasi yang terlalu invasif, atau ingin memberikan lebih banyak akses? ColorOS 12 siap melakukan perintah Anda. Indikator Mikrofon dan Kamera Tetap pentingkan privasi Anda saat melakukan kehidupan digital Anda. ColorOS 12 memberi Anda ikon instan setiap kali aplikasi Anda ingin menggunakan kamera atau mikrofon. Beralih Antar Mikrofon dan Kamera Nonaktifkan izin kamera atau mikrofon aplikasi apa pun dengan satu sentuhan ke bawah pada pusat kendali. Dasbor Privasi Kelola semua izin dengan mudah dengan gambaran yang jelas di Dasbor Privasi. Terganggu dengan aplikasi yang terlalu invasif, atau ingin memberikan lebih banyak akses? ColorOS 12 siap melakukan perintah Anda. Indikator Mikrofon dan Kamera Tetap pentingkan privasi Anda saat melakukan kehidupan digital Anda. ColorOS 12 memberi Anda ikon instan setiap kali aplikasi Anda ingin menggunakan kamera atau mikrofon. Beralih Antar Mikrofon dan Kamera Nonaktifkan izin kamera atau mikrofon aplikasi apa pun dengan satu sentuhan ke bawah pada pusat kendali. Anti-peepinguntuk Notifikasi7 Tak ada mata yang mengintip Teknologi anti-peeping menggunakan AI untuk mendeteksi wajah lain yang melihat layar Anda dan secara otomatis menyembunyikan notifikasi. Cara yang berguna untuk menghindari orang lain yang usil di transportasi umum. Anti-peeping untuk Notifikasi aktif! Anti-peepinguntuk Notifikasi7 Tak ada mata yang mengintip Teknologi anti-peeping menggunakan AI untuk mendeteksi wajah lain yang melihat layar Anda dan secara otomatis menyembunyikan notifikasi. Cara yang berguna untuk menghindari orang lain yang usil di transportasi umum. Anti-peeping untuk Notifikasi aktif! Hemat Daya dengan Satu Sentuhan Satu sentuhan untuk tahan lebih lama Aktif lebih lama dengan hemat daya baterai lewat satu sentuhan. Secara cerdas mendeteksi dan menonaktifkan aplikasi yang sedang digunakan membuat ponsel Anda tetap aktif hingga pengisian daya berikutnya. Quantum Animation Engine Gambaran kenyataan di setiap sentuhan Quantum Animation Engine memberikan respons yang sangat halus untuk disentuh, dengan scroll dan interaksi layar yang lancar secara virtual mencerminkan dunia nyata. Widget memiliki "massa virtual", sehingga masing-masing memiliki respons berbeda saat dipindahkan. 30% Mengosongkan 30% RAM8 Kinerja sistem berubah setelah 36 bulan penggunaan8 AI System Booster Performa lancar yang selalu bersama Anda AI System Booster memastikan responsivitas maksimum setiap saat dengan memfokuskan daya CPU pada aplikasi yang sedang digunakan, bahkan saat Anda bergerak dengan cepat di antara aplikasi dan tugas dalam kinerja yang sangat mulus dari OS Anda. 30% Mengosongkan 30% RAM8 Kinerja sistem berubah setelah 36 bulan penggunaan8 Omoji mana yang cocok dengan gaya Anda? Dengan opsi penyesuaian yang luar biasa, Omoji baru ini menjadikan ekspresi Anda yang sebenarnya menjadi menyenangkan dan menarik. Jelajahi di bawah ini untuk merasakan apa yang dapat Anda lakukan dengan Omoji Anda dan bagikan dengan dunia! Kembali ke tempat aku berada Antik Kasual Futuristik Cantik Sporty Kembali ke tempat aku berada [Pembaruan Perangkat Lunak]. 2. Sistem akan secara otomatis menampilkan pembaruan baru. Anda dapat melihat pemberitahuan pada ikon [Pembaruan sistem]. 3. Unduh firmware. Cara terbaik untuk mengunduh dengan menggunakan jaringan Wi-Fi untuk menghindari konsumsi data seluler Anda. 4. Pilih [Pembaruan Sistem]. Perangkat Anda akan reboot dan mulai memperbarui, proses ini akan memakan waktu beberapa menit. *Catatan Hanya berlaku untuk peningkatan Color11 ke ColorOS 12 versi resmi. Pembaruan ini tidak tersedia di seluruh versi, juga tidak dapat dilakukan untuk pembaruan versi alfa atau versi beta. 3. Bagaimana cara membuat Omoji sendiri? 1. Buka pengaturan "Masuk" akun. 2. Klik "Buat Omoji" dan "Omoji Saya" untuk masuk ke halaman edit gambar Omoji. 3. Klik “Buat Omoji” dan mulailah mendesain Omoji Anda sendiri. 4. Setelah mengedit, klik "Selesai" untuk menyimpan Omoji sebagai gambar saya atau sebagai avatar akun Anda. Apa yang dilakukan Always On Display? Always On Display atau AOD adalah fitur ColorOS. Fitur ini akan memastikan Anda tidak akan melewatkan informasi penting saat layar ponsel mati. AOD memberi Anda berbagai gaya AOD, termasuk siluet potret, teks, Omoji, pola khusus, teks dan gambar, jam, tampilan jam, dan gambar. Fitur ini memungkinkan Anda untuk membuat Omoji di halaman pengaturan AOD. Anda dapat membuat hingga 20 karakter Omoji setiap karakter memiliki 3 gerakan merapatkan mata/buka mulut/tersenyum di halaman pembuatan. Bagaimana cara menghubungkan ponsel OPPO ke PC? Interaksi antara ponsel dan komputer Anda harus mulus. Memperkenalkan PC Connect yang hadirkan satu otak dalam beberapa layar untuk sinkronisasi yang mudah. Jadikan hari-hari Anda lancar dan fleksibel dengan pemberitahuan dan clipboard bersama. ● Koneksi Bluetooth 1. Klik "Aplikasi PC Connect" di komputer Anda untuk menemukan smartphone 2. Pilih opsi "kolaborasi multi layar" di pengaturan atau pusat kendali smartphone Anda dan aktifkan. 3. Setelah komputer Anda menemukan smartphone Anda, sebuah kotak pop-up akan muncul. Klik "Hubungkan". 4. Klik "Izinkan" di komputer Anda untuk menyelesaikan koneksi. 5. Jika Anda melihat antarmuka smartphone muncul di layar komputer berarti koneksi telah selesai. ● Kode QR 1. Buka link scan code di komputer "PC Connect" 2. Aktifkan kamera di smartphone untuk memindai kode 3. Kartu komputer yang ditemukan di smartphone muncul, klik untuk membuat koneksi Mendukung Ponsel OPPO FAQ Gunakan bar untuk menavigasi!
Gabung KomunitasYuk gabung komunitas {{forum_name}} dulu supaya bisa kasih cendol, komentar dan hal seru lainnya. Selamat Malam para mastah kaskus , Gan mau belajar nih , Boleh lah share tutornya buat Os Android Sendiri buat Smartphone ?? Minta tlong share tutornya yah gan 13-09-2014 1828 redeyes2509 dan nona212 memberi reputasi ane bantu sundul aja deh gan 13-09-2014 2101 jdi programmer dlu... 13-09-2014 2104 redeyes2509 memberi reputasiQuoteOriginal Posted By hendrish►ane bantu sundul aja deh gan haha iya gan makasih . QuoteOriginal Posted By dickaoppai►jdi programmer dlu...makanya saya mau belajar yang basicnya saja gan 13-09-2014 2216 Kaskus Maniac Posts 4,378 maksudnya remastering ya gan 14-09-2014 1213 Kaskus Addict Posts 2,152 Saran ane, ente baca-baca materi tentang "compiling android".Code 15-09-2014 0123 TS, dimulai dari sini dulu Code Kemudian harus cari driver yang spesifik untuk device tersebut. Waktu compile jangan lupa, komputer abal-abal jangan dipake compile. Kalo agan tanya kenapa, coba aja, nanti bakalan tahu maksud saya kenapa 15-09-2014 0636 QuoteOriginal Posted By aliveabadan►Saran ane, ente baca-baca materi tentang "compiling android".Code oke gan sya Pelajari Dulu . QuoteOriginal Posted By darkrevenant►TS, dimulai dari sini dulu Code Kemudian harus cari driver yang spesifik untuk device tersebut. Waktu compile jangan lupa, komputer abal-abal jangan dipake compile. Kalo agan tanya kenapa, coba aja, nanti bakalan tahu maksud saya kenapa iya gan , mkasih atas saranya . 15-09-2014 1358 susah gan 17-09-2014 0828 susah gan, ga main main tuh 19-09-2014 1507 KASKUS Maniac Posts 7,458 QuoteOriginal Posted By mrezhaf►Selamat Malam para mastah kaskus , Gan mau belajar nih , Boleh lah share tutornya buat Os Android Sendiri buat Smartphone ?? Minta tlong share tutornya yah gan ente butuh usaha yg panjang kalo ente sendiri gak ngerti programming. cek subforum programming, lebih bermanfaat daripada disini. pertanyaan ente terjawab setelah ente tau betul tentang cara kerja kernel. cari komunitas ke luar negeri. jangan berharap dapet jawaban disini, disini mah masih nubi nubi. seriously true story. gak ada yg mau ngajarin krn gak ada yg bisa/males . perangkat bisa pakek raspberry pi atau arm kit yg dijual di toko toko komponen elektronik. atau pakek software virtual box juga bisa yg gratisan, tapi prosesornya intel sih bukan arm. mumpung masih muda dan banyak waktu, cepetan buruan belajar. keburu kerja/kimpoi, udah repot/males belajar. kamu akan ketemu yg namanya teori schedulling, interupt, thread, process, banyak banget deh, gw udah lupa/males. 20-09-2014 0018 Diubah oleh tole_90 20-09-2014 0020 Kaskus Maniac Posts 4,105 ane masih gagal paham ama pertanyaan ts, kalo mau buat os android untuk smartphone apa mulai dari nol, nulis programnya ? Atau cuman port kernel dari device a ke device b dengan terlebih dahulu di sesuain dengan device b ? 20-09-2014 0643 QuoteOriginal Posted By mrezhaf►Selamat Malam para mastah kaskus , Gan mau belajar nih , Boleh lah share tutornya buat Os Android Sendiri buat Smartphone ?? Minta tlong share tutornya yah gan Wah keren, agan mau build dari source atau porting dari AOSP kek cm? Pastiin punya hh androidnya & pc/laptop yang powerfull gan, soalnya bakalan lama kalau spek biasa. Main ke sini udah lengkap di jelasin. Selamat berjuang gan. 20-09-2014 1102 worldgovt. memberi reputasi Ane cuman maen vb ngak konek kalo os2'an 22-09-2014 1948 Aktivis Kaskus Posts 545 from scratch mksdnya gan ? mungkin butuh teman2 yg banyak buat negbantuin 20-10-2014 1359 Ane baru belajar ini gan 06-06-2020 1404 mending dimulai dari re compile lineage os nyediain tuh pake source mereka code untuk device ente sendiri 09-06-2020 1444
Sistem build Android mengompilasi resource dan kode sumber aplikasi lalu memaketkannya menjadi APK atau Android App Bundle yang dapat Anda uji, deploy, tanda tangani, dan distribusikan. Android Studio menggunakan Gradle, sebuah toolkit build canggih, untuk mengotomatiskan dan mengelola proses build, sekaligus memungkinkan Anda menentukan konfigurasi build kustom yang fleksibel. Setiap konfigurasi build dapat menentukan rangkaian kode dan resource-nya sendiri, sekaligus menggunakan kembali bagian-bagian yang ada di semua versi aplikasi Anda. Plugin Android Gradle berfungsi dengan toolkit build ini untuk menyediakan proses dan setelan yang dapat dikonfigurasi khusus untuk mem-build dan menguji aplikasi Android. Gradle dan plugin Android Gradle berjalan secara independen dari Android Studio. Ini berarti Anda dapat mem-build aplikasi Android dari dalam Android Studio, command line di komputer, atau di komputer yang tidak memiliki Android Studio, seperti server continuous integration. Jika Anda tidak menggunakan Android Studio, Anda dapat mempelajari cara mem-build dan menjalankan aplikasi dari command line. Output build-nya akan sama saja, baik Anda mem-build project dari command line, di komputer jarak jauh, maupun menggunakan Android Studio. Catatan Karena Gradle dan plugin Android Gradle berjalan secara independen dari Android Studio, Anda perlu mengupdate alat build secara terpisah. Baca catatan rilis untuk mempelajari cara mengupdate Gradle dan plugin Android Gradle. Fleksibilitas sistem build Android memungkinkan Anda membuat konfigurasi build kustom tanpa mengubah file sumber inti aplikasi. Halaman ini membantu Anda memahami cara kerja sistem build Android, dan bagaimana sistem ini dapat membantu Anda menyesuaikan dan mengotomatiskan sejumlah konfigurasi build sekaligus. Jika Anda ingin mempelajari cara men-deploy aplikasi lebih lanjut, lihat Mem-build dan menjalankan aplikasi. Untuk langsung mulai membuat konfigurasi build kustom menggunakan Android Studio, lihat Mengonfigurasi varian build. Proses build Proses build melibatkan banyak alat dan proses yang mengonversi project Anda menjadi Paket Aplikasi Android APK atau Android App Bundle AAB. Plugin Android Gradle melakukan banyak proses build untuk Anda, tetapi akan berguna untuk memahami aspek tertentu dari proses build agar Anda dapat menyesuaikan build untuk memenuhi kebutuhan Anda. Project yang berbeda mungkin memiliki sasaran build yang berbeda. Misalnya, build untuk library pihak ketiga menghasilkan library AAR atau JAR. Namun, aplikasi adalah jenis project yang paling umum, dan build untuk project aplikasi menghasilkan APK atau AAB debug atau rilis dari aplikasi yang dapat Anda deploy, uji, atau rilis ke pengguna eksternal. Halaman ini berfokus pada pengembangan aplikasi, tetapi banyak langkah dan konsep build bersifat umum untuk sebagian besar jenis build. Glosarium build Android Gradle dan plugin Android Gradle membantu Anda mengonfigurasi aspek-aspek build berikut Jenis build Jenis build menentukan properti tertentu yang digunakan Gradle ketika mem-build dan memaketkan aplikasi. Jenis build biasanya dikonfigurasi untuk berbagai tahap siklus proses pengembangan. Misalnya, jenis build debug mengaktifkan opsi debug dan menandatangani aplikasi dengan kunci debug, sedangkan jenis build rilis dapat menyusutkan ukuran, meng-obfuscate, dan menandatangani aplikasi dengan kunci rilis untuk distribusi. Anda harus menentukan setidaknya satu jenis build untuk mem-build aplikasi. Android Studio membuat jenis build rilis dan debug secara default. Untuk mulai menyesuaikan setelan pemaketan aplikasi, pelajari cara mengonfigurasi jenis build. Ragam produk Ragam produk merepresentasikan berbagai versi aplikasi Anda yang dapat dirilis kepada pengguna, seperti versi gratis dan berbayar. Anda dapat menyesuaikan ragam produk untuk menggunakan kode dan resource yang berbeda sekaligus berbagi dan menggunakan kembali bagian-bagian yang umum untuk semua versi aplikasi Anda. Ragam produk bersifat opsional, dan Anda harus membuatnya secara manual. Untuk mulai membuat versi aplikasi yang berbeda, pelajari cara mengonfigurasi ragam produk. Varian build Varian build adalah cross product dari jenis build dan ragam produk, dan merupakan konfigurasi yang digunakan Gradle untuk mem-build aplikasi Anda. Dengan varian build, Anda dapat mem-build versi debug ragam produk selama pengembangan dan menandatangani versi rilis ragam produk untuk distribusi. Meskipun tidak harus mengonfigurasi varian build secara langsung, Anda perlu mengonfigurasi jenis build dan ragam produk yang membentuknya. Membuat jenis build atau ragam produk tambahan juga akan membuat varian build tambahan. Untuk mempelajari cara membuat dan mengelola varian build, baca ringkasan Mengonfigurasi varian build. Entri manifes Anda dapat menentukan nilai untuk beberapa properti file manifes dalam konfigurasi varian build. Nilai build ini menggantikan nilai yang ada dalam file manifes. Ini berguna jika Anda ingin membuat beberapa varian aplikasi dengan nama aplikasi, versi SDK minimum, atau versi SDK target yang berbeda. Jika ada beberapa manifes, alat penggabung manifes akan menggabungkan setelan manifes. Dependensi Sistem build mengelola dependensi project dari sistem file lokal Anda dan dari repositori jarak jauh. Ini berarti Anda tidak perlu menelusuri, mendownload, dan menyalin paket biner dependensi secara manual ke dalam direktori project. Untuk mencari tahu selengkapnya, lihat Menambahkan dependensi build. Penandatanganan Sistem build memungkinkan Anda menentukan setelan penandatanganan dalam konfigurasi build, dan dapat otomatis menandatangani aplikasi selama proses build. Sistem build menandatangani versi debug dengan sertifikat dan kunci default menggunakan kredensial yang dikenal untuk menghindari permintaan sandi pada waktu build. Sistem build tidak menandatangani versi rilis kecuali Anda secara eksplisit menentukan konfigurasi penandatanganan untuk build ini. Jika tidak memiliki kunci rilis, Anda dapat membuatnya seperti yang dijelaskan dalam Menandatangani aplikasi Anda. Build rilis yang ditandatangani diperlukan untuk mendistribusikan aplikasi melalui sebagian besar app store. Penyingkatan ukuran kode dan resource Sistem build memungkinkan Anda menentukan file aturan ProGuard yang berbeda untuk setiap varian build. Saat mem-build aplikasi Anda, sistem build akan menerapkan rangkaian aturan yang sesuai untuk menyingkat kode dan resource Anda menggunakan alat penyingkat bawaan, seperti R8. Menyingkat kode dan resource dapat membantu mengurangi ukuran APK atau AAB. Dukungan multi-APK Sistem build memungkinkan Anda untuk otomatis mem-build berbagai APK yang masing-masing hanya berisi kode dan resource yang dibutuhkan untuk kepadatan layar tertentu atau Antarmuka Biner Aplikasi ABI. Untuk mengetahui informasi selengkapnya, lihat Mem-build multi-APK. Namun, merilis satu AAB adalah pendekatan yang direkomendasikan, karena memberikan pemisahan menurut bahasa selain kepadatan layar dan ABI, sekaligus tidak perlu mengupload beberapa artefak ke Google Play. Semua aplikasi baru yang dikirimkan setelah Agustus 2021 harus menggunakan AAB. File konfigurasi build Pembuatan konfigurasi build kustom mengharuskan Anda melakukan perubahan terhadap satu atau beberapa file konfigurasi build atau file File teks biasa ini menggunakan Domain Specific Language DSL untuk menggambarkan dan memanipulasi logika build menggunakan Groovy, yaitu bahasa dinamis untuk Java Virtual Machine JVM, atau skrip Kotlin, yang merupakan ragam dari bahasa Kotlin. Anda tidak perlu mengetahui Groovy atau skrip Kotlin untuk mulai mengonfigurasi build, karena plugin Android Gradle memperkenalkan sebagian besar elemen DSL yang Anda butuhkan. Untuk mempelajari DSL plugin Android Gradle lebih lanjut, baca Dokumentasi referensi DSL untuk Groovy. Skrip Kotlin juga bergantung pada DSL Kotlin Gradle yang digunakan. Ketika memulai project baru, Android Studio secara otomatis akan membuat beberapa file ini untuk Anda, seperti dalam gambar 1, dan mengisinya berdasarkan default yang logis. Gambar 1. Struktur project default untuk modul aplikasi Android. Ada beberapa file konfigurasi build Gradle yang merupakan bagian dari struktur project standar untuk aplikasi Android. Sebelum Anda dapat mulai mengonfigurasi build, penting untuk memahami cakupan dan tujuan setiap file ini, serta elemen DSL dasar yang ditetapkannya. File setelan Gradle File untuk Groovy atau file untuk skrip Kotlin terletak di direktori project root. File setelan ini menentukan setelan repositori level project dan memberi tahu Gradle modul mana yang harus disertakan saat mem-build aplikasi. Project multi-modul perlu menentukan setiap modul yang harus dimasukkan ke build final. Untuk sebagian besar project, file akan terlihat seperti berikut secara default Groovy pluginManagement { /** * The pluginManagement {repositories {...}} block configures the * repositories Gradle uses to search or download the Gradle plugins and * their transitive dependencies. Gradle pre-configures support for remote * repositories such as JCenter, Maven Central, and Ivy. You can also use * local repositories or define your own remote repositories. The code below * defines the Gradle Plugin Portal, Google's Maven repository, * and the Maven Central Repository as the repositories Gradle should use to look for its * dependencies. */ repositories { gradlePluginPortal google mavenCentral } } dependencyResolutionManagement { /** * The dependencyResolutionManagement {repositories {...}} * block is where you configure the repositories and dependencies used by * all modules in your project, such as libraries that you are using to * create your application. However, you should configure module-specific * dependencies in each module-level file. For new projects, * Android Studio includes Google's Maven repository and the Maven Central * Repository by default, but it does not configure any dependencies unless * you select a template that requires some. */ repositories { google mavenCentral } } = "My Application" include app’ Kotlin pluginManagement { /** * The pluginManagement {repositories {...}} block configures the * repositories Gradle uses to search or download the Gradle plugins and * their transitive dependencies. Gradle pre-configures support for remote * repositories such as JCenter, Maven Central, and Ivy. You can also use * local repositories or define your own remote repositories. The code below * defines the Gradle Plugin Portal, Google's Maven repository, * and the Maven Central Repository as the repositories Gradle should use to look for its * dependencies. */ repositories { gradlePluginPortal google mavenCentral } } dependencyResolutionManagement { /** * The dependencyResolutionManagement {repositories {...}} * block is where you configure the repositories and dependencies used by * all modules in your project, such as libraries that you are using to * create your application. However, you should configure module-specific * dependencies in each module-level file. For new projects, * Android Studio includes Google's Maven repository and the Maven Central * Repository by default, but it does not configure any dependencies unless * you select a template that requires some. */ repositories { google mavenCentral } } = "My Application" include"app" File build level atas File level atas untuk Groovy atau file untuk skrip Kotlin terletak di direktori root project. File ini menentukan dependensi yang berlaku untuk semua modul dalam project Anda. Secara default, file build level atas menggunakan blok plugins untuk menentukan dependensi Gradle yang sama untuk semua modul dalam project. Selain itu, file build level atas berisi kode untuk membersihkan direktori build. Contoh kode berikut menjelaskan setelan default dan elemen DSL dalam file level atas setelah membuat project baru Groovy plugins { /** * Use `apply false` in the top-level file to add a Gradle * plugin as a build dependency but not apply it to the current root * project. Don't use `apply false` in sub-projects. For more information, * see Applying external plugins with same version to subprojects. */ id ' version ' apply false id ' version ' apply false id ' version ' apply false } Kotlin plugins { /** * Use `apply false` in the top-level file to add a Gradle * plugin as a build dependency but not apply it to the current root * project. Don't use `apply false` in sub-projects. For more information, * see Applying external plugins with same version to subprojects. */ id" version " apply false id" version " apply false id" version " apply false } Mengonfigurasi properti lingkup project menggunakan properti tambahan tidak digunakan lagi Untuk project Android yang mencakup beberapa modul, sebaiknya Anda menentukan properti tertentu di level project dan membagikannya ke semua modul. Anda dapat melakukannya dengan menambahkan properti tambahan ke blok ext dalam file level atas untuk Groovy atau file untuk Skrip Kotlin Groovy // This block encapsulates custom properties and makes them available to all // modules in the project. The following are only a few examples of the types // of properties you can define. ext { sdkVersion = 33 // You can also create properties to specify versions for dependencies. // Having consistent versions between modules can avoid conflicts with behavior. appcompatVersion = " ... } ... Kotlin // This block encapsulates custom properties and makes them available to all // modules in the project. The following are only a few examples of the types // of properties you can define. ext { extra["sdkVersion"] = 33 // You can also create properties to specify versions for dependencies. // Having consistent versions between modules can avoid conflicts with behavior. extra["appcompatVersion"] = " ... } ... Untuk mengakses properti ini dari modul dalam project yang sama, gunakan sintaksis berikut pada file modul. Groovy android { // Use the following syntax to access properties you defined at the project level // compileSdk ... } ... dependencies { implementation " ... } Kotlin android { // Use the following syntax to access properties you defined at the project level // compileSdk = // Alternatively, you can access properties using a type safe delegate val sdkVersion Int by ... compileSdk = sdkVersion } ... dependencies { implementation" ... } File build level modul File level modul untuk Groovy atau untuk skrip Kotlin terletak di setiap direktori project/module/. File ini memungkinkan Anda mengonfigurasi setelan build untuk modul tertentu tempatnya berada. Dengan mengonfigurasi setelan build ini, Anda dapat menyediakan opsi pemaketan kustom, seperti ragam produk dan jenis build tambahan, serta mengganti setelan dalam manifes aplikasi main/ atau file level atas atau file Contoh file modul aplikasi Android ini menjelaskan beberapa setelan dan elemen DSL dasar Groovy /** * The first line in the build configuration applies the Android Gradle plugin * to this build and makes the android block available to specify * Android-specific build options. */ plugins { id ' } /** * The android block is where you configure all your Android-specific * build options. */ android { /** * The app's namespace. Used primarily to access app resources. */ namespace ' /** * compileSdk specifies the Android API level Gradle should use to * compile your app. This means your app can use the API features included in * this API level and lower. */ compileSdk 33 /** * The defaultConfig block encapsulates default settings and entries for all * build variants and can override some attributes in main/ * dynamically from the build system. You can configure product flavors to override * these values for different versions of your app. */ defaultConfig { // Uniquely identifies the package for publishing. applicationId ' // Defines the minimum API level required to run the app. minSdk 21 // Specifies the API level used to test the app. targetSdk 33 // Defines the version number of your app. versionCode 1 // Defines a user-friendly version name for your app. versionName " } /** * The buildTypes block is where you can configure multiple build types. * By default, the build system defines two build types debug and release. The * debug build type is not explicitly shown in the default build configuration, * but it includes debugging tools and is signed with the debug key. The release * build type applies ProGuard settings and is not signed by default. */ buildTypes { /** * By default, Android Studio configures the release build type to enable code * shrinking, using minifyEnabled, and specifies the default ProGuard rules file. */ release { minifyEnabled true // Enables code shrinking for the release build type. proguardFiles getDefaultProguardFile' ' } } /** * The productFlavors block is where you can configure multiple product flavors. * This lets you create different versions of your app that can * override the defaultConfig block with their own settings. Product flavors * are optional, and the build system does not create them by default. * * This example creates a free and paid product flavor. Each product flavor * then specifies its own application ID, so that they can exist on the Google * Play Store, or an Android device, simultaneously. * * If you declare product flavors, you must also declare flavor dimensions * and assign each flavor to a flavor dimension. */ flavorDimensions "tier" productFlavors { free { dimension "tier" applicationId ' } paid { dimension "tier" applicationId ' } } } /** * The dependencies block in the module-level build configuration file * specifies dependencies required to build only the module itself. * To learn more, go to Add build dependencies. */ dependencies { implementation project"lib" implementation ' implementation fileTreedir 'libs', include ['*.jar'] } Kotlin /** * The first section in the build configuration applies the Android Gradle plugin * to this build and makes the android block available to specify * Android-specific build options. */ plugins { id" } /** * The android block is where you configure all your Android-specific * build options. */ android { /** * The app's namespace. Used primarily to access app resources. */ namespace = " /** * compileSdk specifies the Android API level Gradle should use to * compile your app. This means your app can use the API features included in * this API level and lower. */ compileSdk = 33 /** * The defaultConfig block encapsulates default settings and entries for all * build variants and can override some attributes in main/ * dynamically from the build system. You can configure product flavors to override * these values for different versions of your app. */ defaultConfig { // Uniquely identifies the package for publishing. applicationId = " // Defines the minimum API level required to run the app. minSdk = 21 // Specifies the API level used to test the app. targetSdk = 33 // Defines the version number of your app. versionCode = 1 // Defines a user-friendly version name for your app. versionName = " } /** * The buildTypes block is where you can configure multiple build types. * By default, the build system defines two build types debug and release. The * debug build type is not explicitly shown in the default build configuration, * but it includes debugging tools and is signed with the debug key. The release * build type applies ProGuard settings and is not signed by default. */ buildTypes { /** * By default, Android Studio configures the release build type to enable code * shrinking, using minifyEnabled, and specifies the default ProGuard rules file. */ getByName"release" { isMinifyEnabled = true // Enables code shrinking for the release build type. proguardFiles getDefaultProguardFile" " } } /** * The productFlavors block is where you can configure multiple product flavors. * This lets you create different versions of your app that can * override the defaultConfig block with their own settings. Product flavors * are optional, and the build system does not create them by default. * * This example creates a free and paid product flavor. Each product flavor * then specifies its own application ID, so that they can exist on the Google * Play Store, or an Android device, simultaneously. * * If you declare product flavors, you must also declare flavor dimensions * and assign each flavor to a flavor dimension. */ flavorDimensions += "tier" productFlavors { create"free" { dimension = "tier" applicationId = " } create"paid" { dimension = "tier" applicationId = " } } } /** * The dependencies block in the module-level build configuration file * specifies dependencies required to build only the module itself. * To learn more, go to Add build dependencies. */ dependencies { implementationproject"lib" implementation" implementationfileTreemapOf"dir" to "libs", "include" to listOf"*.jar" } File properti Gradle Gradle juga menyertakan dua file properti, yang terletak dalam direktori root project, yang dapat Anda gunakan untuk menentukan setelan toolkit build Gradle itu sendiri Di sini, Anda dapat mengonfigurasi setelan Gradle lingkup project, seperti ukuran heap maksimum daemon Gradle. Untuk mengetahui informasi selengkapnya, lihat Lingkungan Build. Mengonfigurasi properti lingkungan lokal untuk sistem build, termasuk properti berikut - Jalur ke NDK. Properti ini sudah tidak digunakan lagi. Setiap versi NDK yang didownload akan diinstal di direktori ndk dalam direktori Android SDK. - Jalur ke SDK. - Jalur ke CMake. - Di Android Studio dan yang lebih baru, membuat symlink ke NDK yang dapat lebih pendek dari jalur NDK yang diinstal. Memetakan ulang NDK ke jalur yang lebih pendek khusus Windows Di Windows, alat dalam folder NDK yang diinstal, seperti akan memiliki jalur panjang. Alat tersebut tidak mendukung jalur panjang dengan baik. Untuk membuat jalur yang lebih pendek, di setel properti untuk meminta plugin Android Gradle membuat symlink ke NDK. Jalur symlink tersebut dapat lebih pendek dari folder NDK yang ada. Misalnya, = C\ akan menghasilkan symlink berikut C\ndk\ Menyinkronkan project dengan file Gradle Jika Anda membuat perubahan pada file konfigurasi build dalam project, Android Studio akan mengharuskan Anda untuk menyinkronkan file project agar dapat mengimpor perubahan konfigurasi build dan menjalankan beberapa pemeriksaan untuk memastikan konfigurasi Anda tidak akan menimbulkan error build. Untuk menyinkronkan file project, klik Sync Now di baris notifikasi yang muncul saat Anda membuat perubahan, seperti dalam gambar 2, atau klik Sync Project dari panel menu. Jika Android Studio menemukan error pada konfigurasi Anda, misalnya, kode sumber Anda menggunakan fitur API yang hanya tersedia di API level yang lebih tinggi dari compileSdkVersion — jendela Messages akan menjelaskan masalah tersebut. Gambar 2. Menyinkronkan project dengan file konfigurasi build di Android Studio. Set sumber Android Studio secara logis mengelompokkan kode sumber dan resource untuk setiap modul dalam set sumber. Saat Anda membuat modul baru, Android Studio akan membuat set sumber main/ dalam modul. Set sumber main/ modul berisi kode dan resource yang digunakan oleh semua varian build-nya. Direktori set sumber tambahan bersifat opsional, dan Android Studio tidak secara otomatis membuatnya saat Anda mengonfigurasi varian build baru. Namun, pembuatan set sumber, yang mirip dengan main/, akan membantu mengatur file dan resource yang hanya boleh digunakan Gradle saat mem-build versi aplikasi tertentu src/main/ Set sumber ini berisi kode dan resource yang sama untuk semua varian build. src/buildType/ Buat set sumber ini untuk menyertakan kode dan resource hanya untuk jenis build tertentu. src/productFlavor/ Buat set sumber ini untuk menyertakan kode dan resource hanya untuk ragam produk tertentu. Catatan Jika build dikonfigurasi agar menggabungkan beberapa ragam produk, Anda dapat membuat direktori set sumber untuk setiap kombinasi ragam produk antar-dimensi ragam src/productFlavor1ProductFlavor2/. src/productFlavorBuildType/ Buat set sumber ini untuk menyertakan kode dan resource hanya untuk varian build tertentu. Misalnya, untuk menghasilkan versi "fullDebug" aplikasi, sistem build akan menggabungkan kode, setelan, dan resource dari set sumber berikut src/fullDebug/ set sumber varian build src/debug/ set sumber jenis build src/full/ set sumber ragam produk src/main/ set sumber utama Catatan Saat membuat file atau direktori baru di Android Studio, gunakan opsi menu File > New agar dapat membuatnya untuk set sumber tertentu. Set sumber yang dapat dipilih didasarkan pada konfigurasi build Anda, dan Android Studio secara otomatis membuat direktori yang diperlukan jika belum ada. Jika set sumber yang berbeda memuat beberapa versi file yang sama, Gradle akan menggunakan urutan prioritas berikut saat menentukan file yang akan digunakan. Set sumber di sebelah kiri menggantikan file dan setelan set sumber di sebelah kanan varian build > jenis build > ragam produk > set sumber utama > dependensi library Hal ini memungkinkan Gradle menggunakan file khusus bagi varian build yang sedang Anda buat, sekaligus menggunakan kembali aktivitas, logika aplikasi, dan resource yang sama bagi versi aplikasi lainnya. Saat menggabungkan beberapa manifes, Gradle menggunakan urutan prioritas yang sama, sehingga setiap varian build dapat menentukan komponen atau izin yang berbeda dalam manifes akhir. Untuk mempelajari lebih lanjut cara membuat set sumber kustom, baca Membuat set sumber. Sistem build lainnya Membuat aplikasi Android dengan Bazel dapat dilakukan, tetapi tidak didukung secara resmi. Android Studio tidak secara resmi mendukung project Bazel. Untuk lebih memahami batasan saat ini untuk mem-build dengan Bazel, lihat masalah umum.