Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Menyiapkan untuk rilis

Saat menyiapkan aplikasi untuk dirilis, Anda perlu mengonfigurasi, mem-build, dan menguji versi rilis aplikasi. Tugas konfigurasi ini mudah, dan melibatkan tugas dasar berupa membersihkan dan memodifikasi kode guna mengoptimalkan aplikasi. Proses build ini mirip dengan proses build debug dan dapat dilakukan menggunakan JDK dan Android SDK Tools. Tugas pengujian berfungsi sebagai pemeriksaan akhir yang memastikan bahwa aplikasi Anda berfungsi sesuai harapan dalam kondisi sebenarnya. Setelah selesai menyiapkan aplikasi untuk dirilis, Anda memiliki file APK bertanda tangan, yang dapat didistribusikan langsung kepada pengguna atau melalui marketplace aplikasi seperti Google Play.

Dokumen ini merangkum tugas-tugas utama yang harus dilakukan untuk menyiapkan rilis aplikasi. Tugas-tugas yang dijelaskan dalam dokumen ini berlaku untuk semua aplikasi Android, terlepas dari metode rilis atau pendistribusiannya kepada pengguna. Jika merilis aplikasi melalui Google Play, sebaiknya Anda juga membaca Checklist peluncuran Google Play.

Catatan: Sebagai praktik terbaik, aplikasi harus memenuhi semua kriteria rilis dari segi fungsi, performa, dan stabilitas sebelum Anda melakukan tugas-tugas yang diuraikan dalam dokumen ini.

Menampilkan kaitan proses persiapan dengan proses pengembangan

Gambar 1. Menyiapkan untuk rilis merupakan tugas pengembangan wajib dan langkah pertama dalam proses publikasi.

Pengantar

Untuk merilis aplikasi kepada pengguna, Anda perlu membuat paket siap rilis yang dapat diinstal dan dijalankan pengguna di perangkat Android. Paket siap rilis ini berisi komponen yang sama dengan file APK debug—kode sumber yang dikompilasi, resource, file manifes, dan sebagainya—dan dibuat menggunakan alat build yang sama. Namun, tidak seperti file APK debug, file APK siap rilis ditandatangani dengan sertifikat Anda sendiri dan dioptimalkan dengan alat zipalign.

Menampilkan lima tugas yang harus dilakukan guna menyiapkan aplikasi untuk dirilis

Gambar 2. Anda melakukan lima tugas utama guna menyiapkan aplikasi untuk dirilis.

Tugas penandatanganan dan pengoptimalan biasanya berjalan lancar jika Anda mem-build aplikasi dengan Android Studio. Misalnya, Anda dapat menggunakan Android Studio dengan file build Gradle untuk mengompilasi, menandatangani, dan mengoptimalkan aplikasi sekaligus. Anda juga dapat mengonfigurasi file build Gradle untuk melakukan hal yang sama saat mem-build aplikasi dari command line. Untuk detail selengkapnya tentang penggunaan file build Gradle, lihat panduan Sistem Build.

Untuk mempersiapkan aplikasi yang akan dirilis, biasanya Anda melakukan lima tugas utama (lihat gambar 2). Setiap tugas utama dapat mencakup satu atau beberapa tugas lebih kecil, bergantung pada cara Anda merilis aplikasi. Misalnya, jika merilis aplikasi melalui Google Play, Anda mungkin ingin menambahkan aturan pemfilteran khusus ke manifes saat mengonfigurasi aplikasi untuk dirilis. Demikian pula, untuk memenuhi pedoman publikasi Google Play, Anda mungkin harus menyiapkan screenshot dan membuat teks promosi saat mengumpulkan materi untuk rilis.

Biasanya, Anda melakukan tugas-tugas yang tercantum dalam gambar 2 setelah men-debug dan menguji aplikasi secara menyeluruh. Android SDK berisi beberapa alat untuk membantu Anda menguji dan men-debug aplikasi Android. Untuk informasi selengkapnya, lihat bagian Men-debug dan Menguji dalam Panduan Developer.

Mengumpulkan materi dan resource

Untuk memulai persiapan rilis aplikasi, Anda perlu mengumpulkan sejumlah item pendukung. Item ini setidaknya mencakup kunci kriptografis untuk menandatangani aplikasi dan ikon aplikasi. Anda mungkin juga harus menyertakan perjanjian lisensi pengguna akhir.

Kunci kriptografis

Sistem Android mengharuskan setiap aplikasi terinstal ditandatangani secara digital dengan sertifikat yang dimiliki developer aplikasi tersebut (yaitu, sertifikat yang kunci pribadinya dipegang developer). Sistem Android menggunakan sertifikat ini sebagai cara mengidentifikasi penulis aplikasi dan membuat hubungan kepercayaan antar-aplikasi. Sertifikat yang digunakan untuk penandatanganan tidak perlu ditandatangani oleh certificate authority; sistem Android mengizinkan Anda menandatangani aplikasi dengan sertifikat yang ditandatangani sendiri. Untuk mempelajari persyaratan sertifikat, lihat Menandatangani Aplikasi.

Penting: Aplikasi Anda harus ditandatangani dengan kunci kriptografis yang masa berlakunya berakhir setelah 22 Oktober 2033.

Anda mungkin juga perlu memperoleh kunci rilis lainnya jika aplikasi mengakses layanan atau menggunakan library pihak ketiga yang mengharuskan Anda untuk menggunakan kunci yang didasarkan pada kunci pribadi.

Ikon aplikasi

Pastikan Anda memiliki ikon aplikasi yang memenuhi pedoman ikon yang direkomendasikan. Ikon aplikasi membantu pengguna mengidentifikasi aplikasi Anda di Layar utama perangkat dan di jendela Peluncur. Ikon aplikasi juga muncul di Manage Applications, My Downloads, dan di tempat lainnya. Selain itu, layanan publikasi seperti Google Play menampilkan ikon kepada pengguna.

Catatan: Jika merilis aplikasi di Google Play, Anda harus membuat ikon dalam versi resolusi tinggi. Lihat Aset Visual untuk Aplikasi untuk informasi selengkapnya.

Perjanjian lisensi pengguna akhir

Pertimbangkan untuk mempersiapkan EULA (Perjanjian Lisensi Pengguna Akhir) untuk aplikasi Anda. EULA dapat membantu melindungi orang, organisasi, dan kekayaan intelektual. Sebaiknya sediakan EULA bersama aplikasi.

Materi lain-lain

Anda mungkin juga perlu menyiapkan materi promosi dan pemasaran untuk memublikasikan aplikasi. Misalnya, jika merilis aplikasi di Google Play, Anda perlu menyiapkan teks promosi untuk membuat screenshot aplikasi. Untuk informasi selengkapnya, lihat Aset Visual untuk Aplikasi.

Mengonfigurasi aplikasi untuk dirilis

Setelah mengumpulkan semua materi pendukung, Anda dapat mulai mengonfigurasi aplikasi untuk dirilis. Bagian ini merangkum perubahan konfigurasi yang sebaiknya dibuat pada kode sumber, file resource, dan manifes aplikasi sebelum merilis aplikasi. Meskipun sebagian besar perubahan konfigurasi yang tercantum di bagian ini bersifat opsional, perubahan ini dianggap sebagai praktik coding yang baik dan sebaiknya Anda mengimplementasikannya. Dalam kasus tertentu, Anda mungkin sudah membuat perubahan konfigurasi ini sebagai bagian dari proses pengembangan.

Memilih nama paket yang baik

Pastikan Anda memilih nama paket yang sesuai dengan masa pakai aplikasi. Anda tidak dapat mengubah nama paket setelah mendistribusikan aplikasi kepada pengguna. Anda dapat menetapkan nama paket dalam file manifes aplikasi. Untuk informasi selengkapnya, lihat dokumentasi atribut package.

Menonaktifkan logging dan proses debug

Pastikan Anda menonaktifkan logging dan opsi proses debug sebelum mem-build aplikasi untuk dirilis. Anda dapat menonaktifkan logging dengan menghapus panggilan ke metode Log dalam file sumber. Anda dapat menonaktifkan proses debug dengan menghapus atribut android:debuggable dari tag <application> dalam file manifes, atau dengan menetapkan atribut android:debuggable ke false dalam file manifes. Hapus juga setiap file log atau file pengujian statis yang telah dibuat dalam project Anda.

Selain itu, Anda juga harus menghapus semua panggilan pelacak Debug yang ditambahkan ke kode, seperti panggilan metode startMethodTracing() dan stopMethodTracing().

Penting: Pastikan untuk menonaktifkan proses debug bagi aplikasi Anda jika menggunakan WebView untuk menampilkan konten berbayar atau jika menggunakan antarmuka JavaScript, karena proses debug memungkinkan pengguna memasukkan skrip dan mengekstrak konten menggunakan Chrome DevTools. Untuk menonaktifkan proses debug, gunakan metode WebView.setWebContentsDebuggingEnabled().

Membersihkan direktori project

Bersihkan dan pastikan project mematuhi struktur direktori yang dijelaskan dalam Project Android. Membiarkan file yang terpisah atau usang dalam project dapat menyebabkan aplikasi berperilaku tidak terduga dan tidak dapat mengompilasi. Anda setidaknya harus melakukan tugas-tugas pembersihan berikut:

  • Tinjau konten direktori jni/, lib/, dan src/. Direktori jni/ hanya boleh berisi file sumber terkait Android NDK, seperti file .c, .cpp, .h, dan .mk. Direktori lib/ hanya boleh berisi file library pihak ketiga atau file library pribadi, termasuk library statis dan bersama yang dibuat sebelumnya (misalnya, file .so). Direktori src/ hanya boleh berisi file sumber untuk aplikasi (file .java dan .aidl). Direktori src/ tidak boleh berisi file .jar.
  • Periksa project Anda apakah ada file data pribadi atau kepemilikan yang tidak digunakan aplikasi, lalu hapus file tersebut. Misalnya, lihat dalam direktori res/ project Anda apakah ada file drawable, file tata letak, dan file nilai lama yang tidak lagi digunakan, lalu hapus file tersebut.
  • Periksa direktori lib/ apakah ada library pengujian, lalu hapus library tersebut jika tidak digunakan lagi oleh aplikasi Anda.
  • Tinjau isi direktori assets/ dan direktori res/raw/ apakah ada file aset raw dan file statis yang perlu diupdate atau dihapus sebelum dirilis.

Meninjau serta mengupdate manifes dan setelan build Gradle

Periksa apakah item file manifes dan build berikut sudah ditetapkan dengan benar:

  • Elemen <uses-permission>

    Anda harus menetapkan hanya izin yang relevan dan diperlukan untuk aplikasi.

  • Atribut android:icon dan android:label

    Anda harus menetapkan nilai untuk atribut ini, yang berada dalam elemen <application>.

  • Atribut android:versionCode dan android:versionName.

    Sebaiknya Anda menetapkan nilai untuk atribut ini, yang berada dalam elemen <manifest>. Untuk informasi selengkapnya, lihat Membuat Versi Aplikasi.

Ada sejumlah elemen file manifes atau build tambahan yang dapat ditetapkan jika Anda merilis aplikasi di Google Play. Misalnya, atribut android:minSdkVersion dan android:targetSdkVersion, yang berada dalam elemen <uses-sdk>. Untuk informasi selengkapnya tentang ini dan setelan Google Play lainnya, lihat Filter di Google Play.

Mengatasi masalah kompatibilitas

Android menyediakan sejumlah alat dan teknik agar aplikasi Anda kompatibel dengan beragam perangkat. Agar aplikasi tersedia bagi sebagian besar pengguna, pertimbangkan untuk melakukan hal-hal berikut:

  • Tambahkan dukungan untuk konfigurasi multilayar

    Pastikan Anda memenuhi praktik terbaik untuk mendukung multilayar. Dengan mendukung konfigurasi multilayar, Anda dapat membuat aplikasi yang berfungsi dengan baik dan tampak menarik di setiap ukuran layar yang didukung Android.

  • Optimalkan aplikasi untuk perangkat tablet Android

    Jika aplikasi Anda didesain untuk perangkat yang lebih lama dari Android 3.0, buat agar kompatibel dengan perangkat Android 3.0 dengan mengikuti pedoman dan praktik terbaik yang dijelaskan dalam Mengoptimalkan Aplikasi untuk Android 3.0 .

  • Pertimbangkan untuk menggunakan Support Library

    Jika aplikasi Anda didesain untuk perangkat yang menjalankan Android 3.x, buat agar kompatibel dengan versi Android yang lebih lama dengan menambahkan Support Library ke project aplikasi. Support Library menyediakan library dukungan statis yang dapat ditambahkan ke aplikasi Android, sehingga Anda dapat menggunakan API yang tidak tersedia di versi platform lama atau menggunakan API utilitas yang bukan bagian dari API framework.

Memperbarui URL server dan layanan

Jika aplikasi mengakses layanan atau server jarak jauh, pastikan Anda menggunakan URL produksi atau jalur untuk server atau layanan, bukan URL atau jalur untuk pengujian.

Mengimplementasikan pemberian lisensi (jika merilis aplikasi di Google Play)

Jika Anda merilis aplikasi berbayar melalui Google Play, pertimbangkan untuk menambahkan dukungan Pemberian Lisensi Google Play. Pemberian lisensi memungkinkan Anda mengontrol akses ke aplikasi berdasarkan apakah pengguna saat ini telah membelinya. Penggunaan Pemberian Lisensi Google Play bersifat opsional, meskipun Anda merilis aplikasi melalui Google Play.

Untuk informasi selengkapnya tentang Layanan Pemberian Lisensi Google Play dan cara menggunakannya dalam aplikasi, lihat Pemberian Lisensi Aplikasi.

Mem-build aplikasi untuk dirilis

Setelah selesai mengonfigurasi aplikasi, Anda dapat mem-build-nya menjadi file APK siap rilis yang ditandatangani dan dioptimalkan. JDK berisi alat untuk menandatangani file APK (Keytool dan Jarsinger); Android SDK berisi alat untuk mengompilasi dan mengoptimalkan file APK. Jika menggunakan Android Studio atau sistem build Gradle dari command line, Anda dapat mengotomatiskan seluruh proses build ini. Untuk informasi selengkapnya tentang mengonfigurasi build Gradle, lihat Mengonfigurasi Build Gradle.

Mem-build aplikasi dengan Android Studio

Anda dapat menggunakan sistem build Gradle, yang terintegrasi dengan Android Studio, untuk membuat file APK siap rilis yang ditandatangani dengan kunci pribadi dan dioptimalkan. Untuk mempelajari cara menyiapkan dan menjalankan build dari Android Studio, lihat Mem-build dan Menjalankan build dari Android Studio.

Proses build menganggap Anda memiliki sertifikat dan kunci pribadi yang sesuai untuk menandatangani aplikasi. Jika tidak memiliki sertifikat dan kunci pribadi yang sesuai, Android Studio dapat membantu Anda membuatnya. Untuk informasi selengkapnya tentang proses penandatanganan, lihat Menandatangani Aplikasi.

Menyiapkan server dan resource eksternal

Jika aplikasi Anda mengandalkan server jarak jauh, pastikan server tersebut aman dan telah dikonfigurasi untuk penggunaan produksi. Hal ini sangat penting jika Anda mengimplementasikan penagihan via Google Play pada aplikasi dan melakukan langkah verifikasi tanda tangan pada server jarak jauh.

Selain itu, jika aplikasi mengambil konten dari server jarak jauh atau layanan real-time (seperti feed konten), pastikan konten yang Anda sediakan adalah yang terbaru dan siap produksi.

Menguji aplikasi untuk dirilis

Menguji aplikasi versi rilis akan membantu memastikan bahwa aplikasi Anda berjalan dengan baik dalam kondisi perangkat dan jaringan yang sebenarnya. Idealnya, Anda harus menguji aplikasi setidaknya pada satu perangkat berukuran handset dan satu perangkat berukuran tablet untuk memastikan elemen antarmuka pengguna berukuran tepat, dan performa aplikasi serta efisiensi baterai dapat diterima.

Sebagai langkah awal pengujian, lihat Hal yang Harus Diuji. Artikel ini merangkum berbagai situasi Android umum yang harus dipertimbangkan saat melakukan pengujian. Setelah menyelesaikan pengujian dan puas karena versi rilis aplikasi berjalan dengan baik, Anda dapat merilis aplikasi kepada pengguna. Untuk informasi selengkapnya, lihat Merilis Aplikasi kepada Pengguna. Jika Anda memublikasikan aplikasi di Google Play, lihat Checklist Peluncuran untuk Google Play.