news

Minggu, 14 Juni 2020

Cara Build APK di Android Studio


Build APK

Salah satu langkah terakhir yang perlu dilakukan setelah mengembangkan aplikasi Android adalah membuat berkas executable dalam format APK (Android Application Package). 

Berkas ini yang akan didistribusikan oleh Google Play ke pengguna. Jadi, ketika Anda hendak mempublikasikan Aplikasi Anda ke Google Play, berkas inilah yang harus Anda unggah.
Jika Anda belum memahami berkas APK, Anda dapat menyamakannya dengan berkas exe di windows atau ipa di iOS.
Cara membuat file APK di Android terbilang cukup mudah. Anda dapat menggunakan sebuah wizard atau melalui command line. Pada modul ini, kita akan fokus menggunakan wizard.
Membuat APK terbagi menjadi 2 yakni dengan menggunakan: 
  1. Default keystore
  2. Custom keystore
Keystore adalah sebuah berkas biner yang berisi informasi tentang satu atau lebih private keyPrivate key ini digunakan untuk mencegah pemalsuan aplikasi. Konsep umumnya adalah:
  • Sistem Operasi Android mewajibkan semua APK di-sign sebelum terpasang ke dalam device.
  • Proses signing ini membutuhkan Public dan Private Key.
  • Proses signing ini berlangsung selama pembuatan APK dalam mode debug maupun released.
  • Sebuah sertifikat digital public key, atau identity certificate, berisi informasi mengenai sertifikat itu sendiri dan metadata dari pemilik sertifikat tersebut. Pemilik sertifikat ini biasanya adalah developer yang mengembangkan aplikasi.
  • Public key yang digunakan dalam proses signing di atas akan dilampirkan di dalam berkas APK. Proses ini dilakukan secara otomatis oleh Android Studio.
  • Ketika Anda hendak memperbarui Aplikasi Anda pada Google Play, maka Google Play hanya akan menerimanya bila keystore yang digunakan sama dengan keystore yang pertama kali Anda gunakan ketika mengunggah Aplikasi tersebut ke Google Play.
Kegunaan lain dari keystore adalah:
  • Untuk integrasi ke layanan Google seperti Google Maps dengan menggunakan nilai hash (digest SHA1) di dalamnya.
  • Untuk integrasi ke layanan API Facebook dengan menggunakan key hash base64 yang terkandung di dalam keystore.
Keystore merupakan sebuah berkas penting yang harus Anda jaga, terlebih ketika aplikasi Anda memiliki jumlah unduhan pengguna yang banyak. Sebabnya, kelalaian menjaga keystore ini dapat menghalangi Anda untuk memperbarui aplikasi. Akibat terburuk adalah Anda harus melakukannya dari awal lagi.
Berikut adalah tips yang bisa Anda gunakan untuk mengamankan keystore :
  1. Pilih kata kunci (password) yang sulit ditebak. Kombinasikan angka, alfabet dan simbol dalam membuatnya.
  2. Bedakan antara keystore password dan key password ketika membuat berkas APK dengan custom keystore.
  3. Jangan memberikan keystore kepada orang yang tidak dipercaya apalagi meletakkannya di dalam berkas proyek aplikasi.
  4. Letakan di tempat yang Anda ingat dan aman tentunya.
Untuk memahami hal di atas lebih jauh, baca tautan berikut:
Jika Anda ingin menemukan default keystore Anda, maka pengguna Mac dapat menemukannya di ~/.android/debug.keystore. Sementara itu pengguna Windows bisa menemukannya di  C:\User\YourUser\.android\debug.keystore.

CodeLab Build APK

Untuk mulai melakukan proses build APK, Anda dapat mengikuti langkah berikut:
  1. Buka kembali proyek kosong yang telah kita buat sebelumnya.
  2. Sekarang klik menu Build → Build Bundles(s) / APK(s) → Build APK(s).
    20181219141021cc6eb2c271a6472e3a057156fec675c6
  3. Gradle akan membuat berkas APK secara otomatis. Lama proses ini bergantung pada seberapa kompleks Aplikasi yang Anda buat dan jumlah dependency yang Anda gunakan serta spesifikasi perangkat yang Anda gunakan.
  4. Ketika berhasil, Anda dapat melihat notifikasi pada sudut kanan atas Android Studio:
    201710301632064e2acb311eeb9f9a0f9fd5e96f8b409c.jpg
    Sekarang tinggal Anda tekan tautan yang terdapat pada notifikasi tersebut. Secara otomatis Anda akan diarahkan ke lokasi di mana berkas APK disimpan.
    2018121914133263b306bcd13238b0bb3ddd6923486230
    Biasanya lokasinya mengikuti struktur project-name/module-name/build/outputs/apk/. Jika proyek bernama HelloWorld, maka lokasinya adalah HelloWorld/app/build/outputs/apk/apk-debug.apk.
  5. Sekarang coba Anda pindahkan berkas APK yang baru dibuat ke dalam sebuah peranti (device). Buka lokasi berkas tersebut menggunakan file explorer pada gawai tersebut. Kemudian lakukan instalasi aplikasi seperti biasa.
    20181219141614656b1a21ea8aab3d567afae4535d98dc
    Selamat, aplikasi Android baru Anda sudah terpasang di peranti. Berkas APK ini bisa Anda berikan ke pengguna lain untuk dicoba.
    201812191415354fa70a2d5a201be2e812a73cfb558858
  6. Mudah bukan? Sekarang kita lanjut membuat APK dengan custom keystore.  Ingat, APK yang baru saja Anda buat akan ditolak oleh Google Play Store jika Anda mencoba mengunggahnya ke Google Play Store karena Anda membuat APK dengan menggunakan default keystore. Agar dapat diterima, Anda harus menjalankan proses signing atau generate APK tersebut dengan menggunakan custom keystore.
  7. Kembali ke Proyek, klik Build → Generate Signed APK.
    2018121914182028e4ec65e5ac01a2c1d9582862dbd4b5
  8. Selanjutnya, pilih APK.
    20181219143707fbd50629003e0bc7af9708715da2272eApa bedanya dengan Android App Bundle? Android App Bundle adalah format baru yang mempunyai fitur dengan ukuran unduh lebih kecil, fitur on-demand aplikasi dan pembuatan modul asset tertentu saja. Anda bisa mempelajarinya lebih dalam di sini.
  9. Selanjutnya, pilih create new.
    20181219144628e3fcedc1479347146b279415db986e89Pada form yang tampil lengkapi isian di dalamnya. Contoh pengisiannya adalah seperti gambar di bawah ini:
    20181219144930d9d10cb5f56260088cfef8aaa2dd1a41Berikut penjelasan tiap isiannya:
    Keystore pathAnda perlu menentukan di mana lokasi keystore Anda
    Password      Isikan keystore password minimal 6 digit dan bedakan dengan keypassword di bawahnya
    Alias          Alias dari keystore
    Password      keypassword
    ValidityBerapa lama keystore Anda akan valid (dalam hitungan tahun)
    Firstname hingga Country CodeIsikan metadata. Penting untuk mengisi data ini dengan benar.

  10. Setelah selesai klik OK.
  11. Dialog yang di awal akan secara otomatis terisi ketika Anda sudah berhasil mengisi form sebelumnya. Klik next untuk melanjutkan.
    20181219145234fb3a193762d2bcbda8247564dc043828
  12. Jika muncul pertanyaan kata kunci, masukkan kata kunci yang Anda gunakan untuk laptop atau komputer.
  13. Selanjutnya tentukan di mana Anda menyimpan APK yang dihasilkan. Di sini kami membiarkannya tetap default. Klik finish untuk memulai generate signed APK.
    2018121914530440873dea9bd395361efaec173721a411Anda diharuskan memilih Signature V1 atau V2. Google menyarankan untuk memilih V2 karena signature jenis ini akan membuat instalasi APK lebih cepat. Selain itu, ia lebih aman terhadap pergantian (alteration) program dengan tujuan yang tidak baik. Ikuti tautan ini untuk keterangan lebih lanjut.
    https://developer.android.com/about/versions/nougat/android-7.0.html#apk_signature_v2
  14. Perhatikan gradle process di status bar bagian bawah untuk melihat progress signed/generate APK.
    201710301642267ef01494c69cc47b69491319ccbf14bb.jpg
  15. Ketika berhasil, notifikasi seperti berikut akan tampil :
    20171030164306a60a304d26ce1a878a6e8d9cb060d23d.jpg
  16. Selamat APK versi released Anda telah berhasil dibuat. Proses ini perlu ketika Anda hendak mempublikasikan aplikasi Anda di Google Play Store dan memperbaruinya di kemudian waktu.
    Ketika Anda memperbarui aplikasi, jangan lupa mengubah nilai yang ada di dalam build.gradle(Module:app):

    1. versionCode 2 //Incremental

    2. versionName "2.0"