Skip to content

Most visited

Recently visited

navigation

Membuat Pustaka Android

Pustaka Android secara struktural sama dengan modul aplikasi Android. Pustaka ini menyertakan apa saja yang dibutuhkan untuk membangun aplikasi, termasuk kode sumber, file sumber daya, dan manifes Android. Akan tetapi, sebagai ganti mengompilasinya menjadi satu APK yang dijalankan pada perangkat, pustaka Android dikompilasi menjadi satu file Android Archive (AAR) yang bisa Anda gunakan sebagai dependensi untuk modul aplikasi Android. Tidak seperti file JAR, file AAR bisa berisi sumber daya Android dan file manifes, yang memungkinkan Anda membundel dalam sumber daya bersama seperti layout dan sumber daya dapat digambar di samping kelas dan metode Java.

Modul pustaka berguna dalam situasi berikut:

Bisa saja, Anda tinggal memindah file yang ingin digunakan kembali ke dalam modul pustaka kemudian menambahkan pustaka sebagai dependensi untuk setiap modul aplikasi. Laman ini mengajarkan cara melakukan keduanya.

Membuat modul pustaka

Untuk membuat modul pustaka dalam proyek Anda, lakukan seperti berikut:

  1. Klik File > New > New Module.
  2. Dalam jendela Create New Module yang muncul, klik Android Library, kemudian klik Next.

    Ada juga opsi untuk membuat Java Library, yang membangun file JAR biasa. Walaupun file JAR berguna untuk banyak proyek—khususnya bila Anda ingin berbagi kode dengan platform lain—file ini tidak memungkinkan Anda menyertakan sumber daya atau file manifes Android, yang sangat berguna untuk penggunaan kembali kode tersebut dalam proyek Android. Jadi panduan ini memfokuskan pada pembuatan pustaka Android.

  3. Beri nama pada pustaka Anda dan pilih versi SDK minimum untuk kode dalam pustaka, kemudian klik Finish.

Setelah sinkronisasi proyek Gradle selesai, modul pustaka akan muncul dalam panel Project di kiri. Jika Anda tidak melihat folder modul baru, pastikan menggunakan tampilan Android.

Mengonversi modul aplikasi menjadi modul pustaka

Jika modul aplikasi yang ada berisi semua kode yang ingin Anda gunakan kembali, Anda bisa mengubahnya menjadi modul pustaka seperti berikut:

  1. Buka file build.gradle untuk modul aplikasi yang sudah ada. Di bagian atas, Anda akan melihat yang berikut ini:
    apply plugin: 'com.android.application'
    
  2. Ubah penetapan plugin seperti yang ditampilkan di sini:

    apply plugin: 'com.android.library'
    
  3. Klik Sync Project with Gradle Files.

Demikian saja. Struktur keseluruhan modul tetap sama, namun sekarang beroperasi sebagai pustaka Android dan pembangunannya kini akan membuat file AAR sebagai ganti APK.

Menambahkan pustaka Anda sebagai dependensi

Untuk menggunakan kode pustaka Android Anda dalam modul aplikasi lain, lakukan seperti berikut:

  1. Tambahkan pustaka ke proyek Anda dengan salah satu dari dua cara (jika Anda telah membuat modul pustaka dalam proyek yang sama, berarti sudah ada pustaka dan Anda bisa lewati langkah ini):
    • Tambahkan file AAR (atau JAR) yang telah dikompilasi:
      1. Klik File > New Module.
      2. Klik Import .JAR/.AAR Package kemudian klik Next.
      3. Masukkan lokasi file AAR atau JAR kemudian klik Finish.
    • Impor modul pustaka ke proyek Anda:
      1. Klik File > New > Import Module.
      2. Masukkan lokasi direktori modul pustaka kemudian klik Finish.

      Modul pustaka akan disalin ke proyek Anda, sehingga Anda bisa mengedit kode pustaka. Jika Anda ingin memelihara satu versi kode pustaka, berarti mungkin bukan ini yang Anda inginkan dan sebagai gantinya Anda harus mengimpor file AAR yang telah dikompilasi seperti dijelaskan di atas.

  2. Pastikan pustaka tercantum di bagian atas file settings.gradle Anda, seperti yang ditampilkan di sini untuk sebuah pustaka bernama "my-library-module":
    include ':app', ':my-library-module'
    
  3. Buka file build.gradle modul aplikasi dan tambahkan baris baru ke blok dependencies seperti yang ditampilkan dalam cuplikan berikut:
    dependencies {
        compile project(":my-library-module")
    }
    
  4. Klik Sync Project with Gradle Files.

Dalam contoh di atas, modul pustaka Android bernama my-library- module menjadi dependensi pembangunan untuk modul yang menjadi lokasi file build.gradle.

Semua kode dan sumber daya dalam pustaka Android kini dapat diakses oleh modul aplikasi Anda, dan file AAR pustaka akan dibundel ke dalam APK pada waktu pembangunan.

Akan tetapi, jika Anda ingin berbagi file AAR secara terpisah, Anda bisa menemukannya dalam project-name/module-name/build/outputs/aar/ dan Anda bisa menghasilkannya kembali dengan mengeklik Build > Make Project.

Memilih sumber daya yang akan dijadikan publik

Semua sumber daya dalam pustaka secara default bersifat publik. Untuk membuat semua sumber daya agar privat secara implisit, Anda harus mendefinisikan setidaknya satu atribut tertentu sebagai publik. Sumber daya menyertakan semua file dalam direktori res/ proyek Anda, misalnya gambar. Untuk mencegah pengguna pustaka Anda agar tidak mengakses sumber daya yang hanya dimaksudkan untuk penggunaan internal, Anda harus menggunakan mekanisme penetapan privat otomatis ini dengan mendeklarasikan satu atau beberapa sumber daya publik.

Untuk mendeklarasikan sumber daya publik, tambahkan deklarasi ke file public.xml pustaka Anda. Jika Anda belum menambahkan sumber daya publik, Anda perlu membuat file public.xml dalam direktori res/values/ pustaka Anda.

Kode contoh berikut ini membuat dua sumber daya string publik dengan nama mylib_app_name dan mylib_public_string:

<resources>
    <public name="mylib_app_name" type="string"/>
    <public name="mylib_public_string" type="string"/>
</resources>

Anda harus membuat semua sumber daya yang Anda inginkan agar tetap terlihat oleh developer menjadi publik dengan menggunakan pustaka Anda. Misalnya, walaupun sebagian besar sumber daya di pustaka appcompat v7 bersifat privat, atribut yang mengontrol widget Bilah Alat bersifat publik untuk mendukung desain material.

Secara implisit membuat atribut menjadi privat tidak hanya mencegah pengguna pustaka Anda agar tidak menemui usulan pelengkapan kode dari sumber daya pustaka internal namun juga memungkinkan Anda mengganti nama atau membuang sumber daya privat tanpa memutus klien pustaka Anda. Sumber daya privat difilter oleh pelengkapan kode dan editor tema, dan Lint akan memperingatkan Anda bila mencoba mereferensikan sumber daya privat.

Pertimbangan development

Karena Anda mengembangkan modul pustaka dan aplikasi dependen, ketahuilah perilaku dan batasan berikut.

Setelah Anda menambahkan referensi ke modul pustaka ke modul aplikasi Android, Anda bisa menyetel prioritas relatifnya. Pada waktu pembangunan, pustaka akan disatukan dengan aplikasi satu per satu, mulai dari prioritas paling rendah ke yang paling tinggi.

Anatomi file AAR

Ekstensi file AAR adalah .aar, dan tipe artefak Maven harus berupa aar. Filenya sendiri adalah file zip yang berisi entri wajib berikut:

Sebagai tambahan, file AAR dapat menyertakan satu atau beberapa entri opsional berikut:

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Follow Google Developers on WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)