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

Membuat aplikasi instan yang menggunakan plugin fitur

Perhatian: Alur kerja yang dijelaskan di halaman ini hanya berlaku bagi developer yang membuat aplikasi instan menggunakan Android Studio 3.1.

Kami sangat menganjurkan penggunaan Android Studio 3.3 atau yang lebih baru untuk membuat app bundle yang mendukung akses instan.

Panduan ini menjelaskan cara menyiapkan lingkungan pengembangan untuk membuat aplikasi instan. Selanjutnya, Anda akan mempelajari cara membuat aplikasi instan, entah itu dari wizard Create project atau dari aplikasi yang sudah ada. Lalu Anda akan mempelajari cara menjalankan dan men-debug project Android Studio yang berisi aplikasi instan. Terakhir, panduan ini menyajikan referensi tentang memublikasikan aplikasi instan.

Jika Anda belum melakukannya, download Android Studio 3.0 atau yang lebih tinggi sebelum mengikuti langkah-langkah dalam panduan ini.

Menyiapkan lingkungan pengembangan

Di Android Studio, buka Android SDK Manager. Pada tab SDK Platforms, pastikan Android 6.0 (API level 23) atau yang lebih baru telah diinstal.

Lalu, buka tab SDK Tools, dan instal paket berikut:

  • Android SDK Build-Tools 26.x atau yang lebih tinggi
  • Android SDK Platform Tools 25.x atau yang lebih tinggi
  • Android SDK Tools (terbaru)
  • Google Play Instant Development SDK (terbaru)
  • Support Repository (terbaru)
    • Semua dependensi Support Repository (masing-masing versi terbaru)

Meminta hanya izin yang didukung

Aplikasi instan hanya dapat menggunakan izin dari daftar yang terdapat dalam panduan Menambahkan fungsionalitas akses instan ke aplikasi yang sudah ada menggunakan Android App Bundle.

Membuat aplikasi instan

Anda dapat membuat aplikasi instan menggunakan salah satu alur kerja berikut:

Membuat project aplikasi instan baru

Untuk membuat aplikasi instan, selesaikan langkah-langkah berikut:

  1. Jalankan Android Studio dan buat project baru:
    • Jika Anda belum membuka project, di jendela Welcome to Android Studio, klik Start a new Android Studio project.
    • Jika Anda sudah membuka project, pilih File > New Project.
  2. Di jendela Create Android Project, lakukan langkah berikut:
    1. Pada kotak Application name, masukkan "My First Instant App".
    2. Pada kotak Company domain, masukkan "example.com".
    3. Biarkan Package name sebagai "com.example.myfirstinstantapp".
    4. Klik Next.
  3. Di jendela Target Android Devices, lakukan langkah berikut:
    1. Pastikan Phone and Tablet dipilih.
    2. Pada daftar Minimum SDK, centang Include Android Instant app support. Klik Next.
  4. Di jendela Customize Instant App Support, biarkan setelan default. Klik Next.
  5. Di jendela Add an Activity to Mobile, pilih Empty Activity. Klik Next.
  6. Di jendela Configure Activity, lakukan langkah berikut:
    • Pada kotak Instant App URL Host, masukkan "myfirstinstantapp.example.com" (tanpa tanda kutip).
    • Pada kotak Instant App URL route, masukkan "/hello" (tanpa tanda kutip).
    • Pertahankan nilai default setelan lainnya.
    • Klik Finish.

Android Studio akan membuat dan memuat file project baru Anda.

Memodularisasi aplikasi yang sudah ada

Bagian ini menjelaskan cara mengonversi aplikasi monolitik yang sudah ada menjadi aplikasi termodulasi, lalu cara menambahkan fungsionalitas yang mendukung akses instan ke aplikasi yang baru dimodulasi.

Membuat fitur dasar dan modul APK

Untuk membuat aplikasi instan, Anda harus membuat modul berikut terlebih dahulu:

  • Sebuah modul fitur dasar, atau modul fitur yang dipaketkan dalam setiap aplikasi instan yang Anda buat. Modul ini berbeda dengan modul dasar Android App Bundle, yang berisi pengalaman aplikasi instan dan juga pengalaman aplikasi yang terinstal sejak awal.
  • Sebuah modul minimal yang hanya berisi kode bersama yang penting untuk membuat file APK aplikasi Anda.

Setelah menyelesaikan proses ini, proses pembuatan aplikasi Anda akan dipisahkan dari logika aplikasi, sehingga bagian modul yang berbasis logika dapat dikonversi menjadi aplikasi instan.

Menetapkan aplikasi sebagai modul fitur dasar

Saat Anda membuat aplikasi, sebuah modul yang disebut "app" akan otomatis disertakan. Bagian ini menjelaskan cara mendeklarasikan logika aplikasi Anda sebagai bagian dari modul fitur dasar.

Untuk memindahkan logika aplikasi Anda ke dalam modul fitur dasar, selesaikan langkah-langkah berikut:

  1. Ganti nama modul Anda menjadi sesuatu seperti base.
  2. Perbarui pernyataan impor untuk resource aplikasi Anda sehingga mereferensikan modul yang baru diganti namanya itu.
  3. Buka file base/build.gradle modul Anda, lalu tetapkan modul tersebut sebagai modul fitur dengan melakukan perubahan berikut:

    base/build.gradle

        // Replace
        // apply plugin: 'com.android.application'
        // with
        apply plugin: 'com.android.feature'
  4. Modul ini merepresentasikan modul fitur dasar aplikasi Anda, jadi tandai sedemikian rupa dengan menetapkan flag baseFeature ke true:

    base/build.gradle

        android {
            ...
            baseFeature true
            ...
        }

    Catatan: Jika aplikasi Anda hanya memiliki satu modul fitur, modul tersebut harus ditetapkan sebagai modul fitur dasar.

Membuat modul APK minimal

Selain membuat modul fitur dasar, Anda juga perlu membuat modul minimal. Modul ini berisi kode bersama yang diperlukan untuk membuat file APK aplikasi Anda.

Untuk membuat modul minimal, selesaikan langkah-langkah berikut:

  1. Pilih File > New > New Module...
  2. Pada dialog Create New Module yang ditampilkan, pilih Phone & Tablet Module. Klik Next.
  3. Di jendela Phone & Tablet Module, pilih nama modul dan nama paket. Dalam panduan ini, apk digunakan sebagai nama modul.

    Klik Next.

  4. Di jendela Add an Activity to Mobile, pilih Add No Activity. Klik Finish.

Android Studio menyelesaikan pembuatan modul minimal dan memuatnya ke jendela project.

Mengaitkan modul minimal dengan modul fitur

Anda sudah membuat modul fitur, tetapi Android Studio tidak akan menyertakannya dalam file APK aplikasi kecuali jika Anda mengaitkannya dengan modul minimal aplikasi. Caranya, ikuti langkah-langkah berikut:

  1. Karena Anda harus selalu mendeklarasikan ID aplikasi dalam modul Gradle yang mendeklarasikan com.android.application, pindahkan baris applicationID dari modul fitur ke modul minimal.

    Untuk melakukannya, ikuti petunjuk dalam cuplikan kode berikut:

    base/build.gradle

        android {
           defaultConfig {
               // Remove this line
               // applicationId "com.mycompany.example"
               ...
           }
           ...
        }
    
        dependencies {
              // Add this line to declare this module's dependency
              // on the minimal module
              application project(":apk")
        }

    apk/build.gradle

        android {
            ...
            defaultConfig {
                // replace
                // applicationId "com.mycompany.example.apk"
                // with
                applicationId "com.mycompany.example"
                ...
            }
            ...
        }
  2. Modul minimal harus bergantung pada masing-masing modul fitur aplikasi Anda. Untuk melakukannya, ubah dependensi kompilasi, seperti ditunjukkan dalam cuplikan kode berikut:

    apk/build.gradle

        dependencies {
            implementation project(':base')
            // If your app contains feature modules other than the base feature module,
            // add dependency lines that are similar to the following:
            // implementation project(':feature1')
            // implementation project(':feature2')
        }
  3. Pada modul fitur dasar, update file AndroidManifest.xml sehingga berisi konten berikut:

    base/src/main/AndroidManifest.xml

        <manifest xmlns:android="http://schemas.android.com/apk/res/android"
                  xmlns:tools="http://schemas.android.com/tools"
                  package="com.mycompany.example">
        ...
        </manifest>
  4. Setiap file manifes aplikasi Anda harus mereferensikan sebuah paket unik, karena itu perbarui nama dalam AndroidManifest.xml APK Anda sebagai berikut:

    apk/src/main/AndroidManifest.xml

        <manifest xmlns:android="http://schemas.android.com/apk/res/android"
                  package="com.mycompany.example.app">
        </manifest>

Membuat modul fitur lainnya untuk Google Play Instan

Dengan memiliki modul fitur, aplikasi Anda akan lebih mudah diupdate. Modul-modul ini juga memudahkan Anda membuat aplikasi instan, di mana pengguna dapat mengklik link untuk mengakses fungsionalitas dalam modul fitur tertentu tanpa harus menginstal aplikasi Anda.

Jika membuat modul fitur dari awal, Anda dapat langsung menambahkan fungsionalitas untuk Google Play Instan.

Untuk membuat modul fitur baru untuk Google Play Instan, selesaikan langkah-langkah berikut:

  1. Di Android Studio, pilih File > New > New Module...
  2. Di jendela Create New Module yang ditampilkan, pilih Instant App. Klik Next.
  3. Berikan nama untuk modul fitur baru. Dalam panduan ini, modul fitur tersebut dinamakan "instant". Klik Finish.

Android Studio akan menyelesaikan pembuatan modul fitur aplikasi instan baru Anda.

Memverifikasi dependensi modul fitur dasar

Pastikan modul fitur menyertakan dependensi pada modul fitur dasar aplikasi Anda:

instant/build.gradle

dependencies {
        implementation project(':base')
    }
    

Mengaktifkan fungsionalitas "Try Now"

Gambar 1. Tombol "Try Now" yang dimunculkan pada aplikasi instan

Google Play Instan memungkinkan Anda menayangkan aplikasi instan kepada pengguna tanpa mengharuskan mereka mengklik URL. Pengalaman yang disebut "Try Now" ini tersedia di Play Store, seperti ditunjukkan pada Gambar 1.

Untuk menyediakan kapabilitas ini dalam aplikasi, Anda memiliki dua opsi:

  1. Membiarkan aktivitas default Anda sebagai titik masuk ke pengalaman "Try Now".
  2. Menambahkan URL ke aktivitas dan mendeklarasikan sebuah URL default, yang menjadi titik masuk ke pengalaman "Try Now".
Menggunakan aktivitas default

Aktivitas yang menyertakan filter intent berikut akan menjadi titik masuk:

<activity android:name="com.example...MainActivity" ... >
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
    
Membuat URL default

Jika menyediakan akses URL ke aplikasi instan, Anda harus menyertakan URL default. URL ini dipanggil saat pengguna mengklik Try Now di Google Play Store atau saat mereka menyematkan aplikasi instan Anda ke peluncur. Biasanya, URL default terkait dengan aktivitas utama aplikasi Anda, yang terdapat dalam modul fitur dasar aplikasi.

Untuk menambahkan URL default, sertakan atribut <meta-data> dalam modul aplikasi yang berisi aktivitas utama aplikasi Anda, seperti ditunjukkan dalam cuplikan kode berikut:

base/manifests/AndroidManifest.xml

<activity android:name="com.example.base.MainActivity" ... >
        <meta-data android:name="default-url"
                   android:value="https://example.com/welcome" />
    </activity>
    

Menyediakan akses URL ke aplikasi instan

Agar pengguna dapat membuka aplikasi instan Anda di luar Play Store, misalnya di banner atau di situs Anda sendiri, selesaikan salah satu tugas berikut:

  • Gunakan Launch API:

    https://play.google.com/store/apps/details?id=package_name&launch=true
  • Tambahkan link aplikasi ke aplikasi Anda. Setiap link aplikasi merupakan URL spesifik yang Anda miliki yang, jika diklik, akan memuat aktivitas tertentu dalam aplikasi instan Anda.

Mengaitkan domain dengan aplikasi Anda

URL Mapping Editor membantu Anda mengaitkan link aplikasi dengan aktivitas terkait yang akan berfungsi sebagai titik masuk ke aplikasi instan Anda. Untuk mempelajari lebih lanjut, lihat Memverifikasi Link Aplikasi Android.

Pastikan link aplikasi muncul dalam file manifes modul fitur yang diluncurkan saat pengguna mengklik link tersebut. Contoh berikut menyertakan link untuk modul fitur yang bernama "survey":

survey/manifests/AndroidManifest.xml

<activity android:name="com.example.survey_module.SurveyActivity" ... >
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />

            <data
                android:scheme="http"
                android:host="example.com"
                android:pathPrefix="/survey" />
        </intent-filter>
    </activity>
    

Jika, setelah Anda menyelesaikan langkah ini, browser mencoba memuat URL alih-alih aplikasi instan Anda, coba bersihkan database DevMan dengan menjalankan perintah berikut:

$ adb shell pm clear com.google.android.instantapps.devman
    

Mengarahkan pengguna langsung ke aplikasi instan Anda

Anda dapat mengarahkan pengguna langsung ke aplikasi Anda saat mereka mengklik link aplikasi tersebut. Untuk melakukannya, sediakan verifikasi link aplikasi dengan mengikuti langkah-langkah berikut:

  1. Deklarasikan asosiasi situs dengan aplikasi instan Anda.
  2. Tambahkan fungsionalitas verifikasi otomatis ke setiap elemen <intent-filter> yang terkait dengan link aplikasi:

    survey/manifests/AndroidManifest.xml

        <activity android:name="com.example.survey.SurveyActivity" ... >
             <intent-filter android:autoVerify="true">
                 ...
             </intent-filter>
        </activity>

Jika sudah membuat link aplikasi untuk aplikasi instan Anda, Anda dapat memuat modul fitur lain melalui salah satu cara berikut:

  • Panggil intent yang akan memuat URL yang terkait dengan modul fitur tersebut.
  • Gunakan Play Core Library.

Menjalankan aplikasi instan Anda

Anda dapat men-deploy aplikasi instan ke sebagian besar perangkat yang menjalankan Android 5.1 (API level 21) atau yang lebih tinggi. Jika tidak memiliki perangkat pengujian, baca bagian berikut untuk mempelajari cara menyiapkan emulator untuk menjalankan aplikasi instan.

Untuk menjalankan project di Android Studio, lakukan langkah berikut:

  1. Buka jendela Project dengan mengklik View > Tool Windows > Project, lalu pilih Run > Run 'instantapp'.
  2. Di jendela Select Deployment Target, pilih perangkat target tempat Anda ingin menjalankan aplikasi.

Android Studio akan membuat aplikasi Anda, lalu menginstalnya di perangkat pengujian atau emulator.

Menyiapkan emulator yang mendukung aplikasi instan

Untuk menyiapkan emulator guna menjalankan aplikasi instan, selesaikan langkah-langkah berikut:

  1. Buat Android Virtual Device. Untuk menggunakan semua fitur terbaru yang terkait dengan aplikasi instan, konfigurasi perangkat sehingga menjalankan Android 8.1 (API level 27) atau yang lebih baru, menggunakan arsitektur x86, dan menyertakan Google API.

  2. Mulai emulator dan login ke akun Google pengujian.

  3. Pada menu Settings sistem Anda, buka Google > Instant Apps dan nyatakan Anda ingin menggunakan Aplikasi Instan Android.

Men-deploy aplikasi instan untuk dipublikasikan

Untuk menyiapkan aplikasi instan yang akan dipublikasikan, selesaikan langkah-langkah berikut:

  1. Di Android Studio, pilih Build > Generate Signed APK...
  2. Di jendela Generate Signed APK, pilih modul instantapp. Klik Next.
  3. Selesaikan langkah-langkah yang dijelaskan dalam artikel Mendistribusikan aplikasi instan.
  4. Buka Konsol Google Play untuk menyelesaikan alur kerja, seperti dijelaskan dalam artikel Menyiapkan & meluncurkan rilis. Pastikan Anda mengupload APK aplikasi instan.

Untuk mempelajari lebih lanjut cara menyiapkan dan meluncurkan aplikasi di Konsol Google Play, lihat Menandatangani APK.

Referensi lainnya

Pelajari Google Play Instan lebih lanjut dari referensi tambahan berikut:

Codelab: Membuat Aplikasi Instan Pertama Anda
Menambahkan dukungan Google Play Instan dalam aplikasi yang sudah ada.
Codelab: Membuat Aplikasi Instan Multi-Fitur
Memodularisasi aplikasi multi-fitur.