Advertisement
  1. Code
  2. Android SDK

Cara Menambahkan Aplikasi Instan Multi Fitur ke Aplikasi Anda

Scroll to top
Read Time: 19 min

() translation by (you can also view the original English article)

Dalam seri tiga bagian ini, kami telah menjelajahi aplikasi instan Android, sebuah fitur baru yang menyediakan cara yang sama sekali baru untuk menjangkau pengguna yang saat ini tidak menginstal aplikasi anda di perangkat mereka. Hal ini akan berhasil dengan membuat aplikasi anda dapat ditemukan dan dapat diakses dari lokasi manapun yang mendukung URL, termasuk email, hasil pencarian Google, posting di platform media sosial, komentar YouTube, dan forum.

Dalam posting pertama, kita melihat apa itu aplikasi instan, bagaimana mereka bekerja, dan manfaat utama yang mereka tawarkan bagi pengembang Android dan pengguna aplikasi android. Kita bahkan mendapat beberapa pengalaman langsung dengan aplikasi instan, dengan menggunakan wizard pembuatan proyek Studio Android untuk menghasilkan proyek yang telah dikonfigurasi dengan cepat dan cepat untuk mendukung aplikasi instan Android.

Di  pos kedua, saya menggunakan aplikasi sampel MyLocation yang dapat download untuk menunjukkan bagaimana anda akan memperbarui proyek Android yang ada untuk mendukung fitur aplikasi instan. Jika anda telah mengikutinya sejak awal, maka pada saat ini anda telah berhasil mengkonfigurasi ulang proyek MyLocation untuk menyertakan satu modul fitur yang dapat dijalankan pada perangkat virtual Android (AVD) manapun tanpa anda harus menginstal aplikasi MyLocation sepenuhnya. 

Namun, MyLocation saat ini hanya terdiri dari satu modul fitur dasar, dan ketika membahas proyek-proyek Android yang nyata, anda akan sering ingin menawarkan beberapa fitur dalam bentuk aplikasi instan. Dalam angsuran terakhir ini, saya akan menunjukkan kepada anda bagaimana menambahkan beberapa modul fitur ke proyek Android anda dengan memandu anda melalui proses penambahan modul fitur kedua ke MyLocation dan kemudian memetakan modul ini ke URL yang berbeda.

Akhirnya, untuk memastikan anda mendapatkan hasil maksimal dari aplikasi instan, kami akan menyelesaikan rangkaian ini dengan memperhatikan beberapa praktik terbaik aplikasi instan.

Membuat Aplikasi Instan Multi-Fitur

Jika anda telah menyelesaikan angsuran kedua, versi proyek MyLocation anda sekarang harus dibagi ke dalam modul berikut:  

  • mylocation-app.   Modul aplikasi proyek yang dapat diinstal, juga dikenal sebagai modul APK. 
  • mylocation-base.   Modul fitur dasar, yang berisi semua kode dan sumber umum yang digunakan di semua modul proyek.  Modul ini berisi MapsActivity   yang dapat berjalan terpisah dari aplikasi yang dapat diinstal, dan akan diluncurkan di perangkat pengguna setiap kali mereka mencoba mengakses  URL  www.example.com/maps .
  • mylocation-instantapp. Modul aplikasi instan, yang bertanggung jawab untuk mengubah setiap modul fitur proyek menjadi APK aplikasi Instan.  

Jika ini bukan bagaimana versi MyLocation anda saat ini terlihat, anda bisa  mendownload versi ini dari GitHub .  

Sebelum memulai proses penambahan modul fitur kedua ke MyLocation, ada beberapa hal yang perlu diperhatikan.  

Pertama, pada saat menulis, hanya mungkin untuk mengembangkan aplikasi instan menggunakan Pratinjau Android Studio 3.0 dan Canary.  Setiap kali anda bekerja dengan akses awal, anda harus siap menghadapi bug, fungsi yang hilang, dan perilaku aneh lainnya yang akan (mudah-mudahan!)  ditangani sebelum rilis stabil. Namun, bekerja dengan beberapa modul fitur aplikasi instan tampaknya temperamental di Android Studio 3.0 Canary

Untuk mengurangi risiko menghadapi masalah apa pun, anda harus mengecek ulang apakah anda  memiliki Canary versi terbaru terinstal sebelum mencoba menambahkan modul fitur kedua ke proyek MyLocation. Namun, jika proyek anda tiba-tiba mulai muncul kesalahan atau menolak untuk mengkompilasi, maka menjelang akhir artikel ini anda akan menemukan bagian Troubleshooting yang berisi solusi dan kemungkinan perbaikan untuk semua masalah yang mungkin anda hadapi saat menambahkan modul fitur tambahan ke proyek anda.  

Perhatikan juga bahwa dalam tutorial ini, kita akan membuat modul fitur tambahan, memetakan modul ini ke URL yang unik, dan kemudian menguji modul pada Perangkat Virtual Android (AVD). Sudah banyak halangan untuk ditutupi, jadi agar postingan ini tidak terlalu lama, kami akan membuat modul yang hanya menampilkan antarmuka pengguna dan tidak mengandung fungsi nyata.     Namun, tidak ada alasan mengapa anda tidak dapat mengembangkan modul ini dengan kode dan sumber daya anda sendiri, jika anda menginginkan pengalaman aplikasi instan yang lebih otentik.

Membuat Modul Fitur Anda

Langkah pertama untuk mengubah MyLocation menjadi aplikasi instan multi fitur adalah membuat modul fitur kami:  

  • Buka proyek MyLocation di Android Studio.  
  • Pilih   Baru> Modul Baru ...   dari toolbar Android Studio.
  • Pilih   Feature Module, dan klik Next.
  • Dalam area Nama modul, masukkan MyLocation-directions.
  • Periksa apakah minimumSDK adalah nilai yang sama dengan yang anda gunakan di tempat lain dalam proyek anda, lalu klik Next.

Kami mungkin tidak menerapkan fungsi nyata apa pun di modul petunjuk lokasi mylocation kami, namun kami masih memerlukan konfirmasi visual bahwa modul ini telah dimuat dengan benar, jadi pilih template pilihan anda (saya memilih untuk  Basic Activity) dan kemudian klik  Next.  Saya akan memetakan modul fitur ini ke www.example.com/directions , jadi mulai dengan memasukkan example.com dalam area Host Aplikasi Instan. Buka Jenis Rute URL Aplikasi Instan dropdown dan pilih salah satu pathpathPrefix, atau pathPattern. Karena saya ingin modul ini hanya merespons terhadap  www.example.com/directions, saya akan memilih Path.  

Dalam Instan URL App Route, masukkan /directions. Ini memberikan kitta URL lengkap kita: example.com/directions. Ubah Activity Name menjadi DirectionsActivity. Pastikan  Layout Name diatur ke activity_directions, dan kemudian klik Finish.

Create a second feature module using Android Studios built-in module creation wizardCreate a second feature module using Android Studios built-in module creation wizardCreate a second feature module using Android Studios built-in module creation wizard

Menyatakan Ketergantungan Anda  

Seperti yang mungkin anda sudah ketahui, sebuah proyek yang mendukung fitur aplikasi instan ini pasti akan terdiri dari beberapa modul. Jika modul ini akan bekerja sama untuk menciptakan beberapa APK Aplikasi Instan yang berbeda, plus APK regular yang anda instal, maka mereka perlu menyadari satu sama lain, yang berarti anda perlu menambahkan dependensi yang diperlukan untuk masing-masing file modul build.gradle.

Saat anda membuat modul fitur melalui menu New > New module, Android Studio sebenarnya menghasilkan beberapa dependensi ini untuk anda, namun tidak menghasilkan semuanya. Dan, untuk lebih memperumit masalah, anda perlu menggunakan ungkapan yang berbeda, tergantung pada jenis modul yang sedang anda tangani.

Untuk memberi gambaran umum, setiap kali anda membuat modul fitur, anda perlu memberi tahu proyek anda:

  • Modul fitur ini bergantung pada modul fitur dasar proyek anda, dengan menggunakan  implementation project expression
  • Modul fitur dasar proyek anda bergantung pada modul fitur ini, dengan menggunakan feature project expression..
  • Modul aplikasi instan proyek Anda bergantung pada modul fitur ini, dengan menggunakan implementation project expression. 

Pada bagian ini, kita akan melihat masing-masing dependensi ini, jadi mari kita mulai dengan menjalankan melalui dependensi yang didukung oleh Android Studio secara otomatis untuk anda.

implementation project(':mylocation-base')

Modul fitur dasar proyek anda berisi semua kode dan sumber umum yang digunakan dalam proyek anda, jadi modul fungsi tambahan yang anda buat akan bergantung pada modul fitur dasar tunggal ini. 

Jika anda membuka fitur file modul anda (mylocation-directionsbuild.gradle, maka anda akan melihat bahwa Android Studio telah menambahkan modul fitur dasar (MyLocation-base)sebagai dependensi:

1
dependencies {
2
...
3
...
4
...
5
   implementation project(':mylocation-base')
6
7
}

Tidak peduli berapa banyak modul fitur tambahan yang anda buat, semua file build.gradle akan berisi deklarasi yang sama ini:  implementation project(':mylocation-base').

feature project(":mylocation-directions")

Modul fitur dasar anda juga perlu mengetahui semua modul fitur tambahan anda.

Jika anda membuka mylocation-base anda modul build.gradle file, maka anda akan melihat sekali lagi bahwa Android Studio telah melakukan kerjaannya untuk anda, dan menyatakan mylocation-direction sebagai ketergantungan:

1
dependencies {
2
...
3
...
4
...
5
   feature project(":mylocation-directions")

Setiap modul fitur tambahan yang anda buat juga akan ditambahkan ke bagian ini secara otomatis, misalnya:

1
dependencies {
2
...
3
...
4
...
5
   feature project(":mylocation-directions")
6
   feature project(":mylocation-share")
7
   feature project(":mylocation-search")

Apa yang Android Studio Tidak Tambah ....

Ada beberapa dependensi yang saat ini tidak diproduksi oleh Android Studio, jadi anda harus menambahkannya secara manual.

implementation project(':mylocation-directions')

Aplikasi instan adalah komponen yang berdiri sendiri yang dapat berfungsi secara independen dari aplikasi yang dapat diinstal. Dalam konteks aplikasi MyLocation kami, ini berarti bahea  mylocation-direction bisa berfungsi tanpa mylocation-app.  Namun, sebaliknya tidaklah benar:  mylocation-app tidak bisa berfungsi tanpa mylocation-directions

APK yang dapat diinstal harus berisi semua  modul proyek Anda, termasuk semua modul fitur aplikasi instan anda. Oleh karena itu, kita perlu memberikan modul APK (MyLocation-app) heads-up tentang modul fitur baru kami (mylocation-directions). 

Buka   mylocation-app build.gradle file, dan arahkan the mylocation-directions module:

1
dependencies {
2
   implementation project(':mylocation-base')
3
4
//Add the following line//
5
6
   implementation project(':mylocation-directions')
7
8
}

Anda harus mengulangi langkah ini untuk setiap modul fitur yang anda buat, jadi jika anda terus menambahkan modul fitur maka  mylocation-app build.gradle file mungkin akan terlihat seperti ini:

1
dependencies {
2
   implementation project(':mylocation-base')
3
   implementation project(':mylocation-directions')
4
   implementation project(":mylocation-share")
5
   implementation project(":mylocation-search")
6
7
}

Modul aplikasi instan bertanggung jawab untuk mengubah setiap modul fitur proyek menjadi APK Instan, jadi perlu diketahui setiap modul fitur yang anda buat  

Bukalah   mylocation-instantapp module’s build.gradle file anda, dan nyatakan mylocation-base sebagai ketergantungan menggunakan implementation project expression:

1
dependencies {
2
   implementation project(':mylocation-base')
3
   implementation project(':mylocation-directions')
4
5
}

Dan Satu Ketergantungan Tambahan

Sementara kita mengandalkan dependensi proyek, ada satu ketergantungan penting yang masih perlu kita tambahkan.  

Sebuah proyek yang mendukung aplikasi instan hanya perlu mendeklarasikan atribut applicationId sekali, di modul APK (aplikasi). Namun, untuk memastikan atribut aplikasiId benar disebarkan di semua modul fitur anda, anda perlu menambahkan modul APK sebagai ketergantungan modul fitur dasar.  

Bukalah   mylocation-base module’s build.gradle file anda dan tambah   mylocation-app  sebagai ketergantungan, dengan menggunakan   application project expression:

1
dependencies {
2
...
3
...
4
...
5
6
//Add the following line//
7
8
application project(":mylocation-app")

Tidak seperti semua dependensi lain yang telah kita bahas, anda hanya perlu menyatakan ketergantungan pada modul APK satu kali per proyek, dan tidak setiap kali anda membuat modul fitur.  

Hapus File dan Sumber yang Tidak Diinginkan

Meskipun langkah ini tidak wajib, saat ini modul fitur kami memang berisi beberapa file dan direktori yang tidak perlu, jadi mari ikuti praktik terbaik dan selesaikan modul mylocation-directions kita:

  • Beralih ke Android Studio’s Project view.
  • Buka  mylocation-directions module.
  • Hapus src/androidTest directory.
  • Hapus  src/test directory. 

Selesai Memetakan URL Anda

Saat membuat modul fitur ini, kami memasukkan beberapa informasi tentang URL yang pada akhirnya ingin petakan. Namun, saat ini wizard pembuatan modul Android Studio tidak dapat membuat pemetaan URL yang lengkap, jadi anda harus membuka App Links Assistant  dan selesaikan proses ini secara manual:

  • Pilih  Tools > App Links Assistant  dari toolbar Android Studio.
  • Klik tombol Open URL Mapping Editor .  
  • Di tabel yang muncul, pilih baris DirectionsActivity, lalu klik ikon pensil keci
In the URL-to-Activity mappings editor select your DirectionsActivityIn the URL-to-Activity mappings editor select your DirectionsActivityIn the URL-to-Activity mappings editor select your DirectionsActivity
  • Pilih http tombol radio.
  • Pastikan Path dipilih di menu dropdown, lalu masukkan /directions di area teks yang menyertainya  
  • Pastikan  DirectionsActivity dipilih di   Activity dropdown, dan kemudian klik OK.  
  • Kembali di panel App Links Assistan, klik tombol Select Activity .
  • Saat diminta, pilih   DirectionsActivity lalu klik Insert Code

Anda sekarang memiliki dua modul fitur yang dipetakan ke URL yang berbeda. 

Uji Coba mylocation-directions Module anda

Saat ini, konfigurasi run kami diatur untuk mensimulasikan pengguna yang membuka link www.example.com/maps, yang akan diluncurkan MapsActivity, dan dengan ekstensi kami  mylocation-base modul.  Namun, jika kita akan menguji modul fitur tambahan, kita perlu mensimulasikan penyadapan pengguna  www.example.com/directions , yang akan meluncurkan DirectionsActivity kita. Ini mengharuskan kita untuk memperbarui konfigurasi runtime kita:  

  • Luncurkan AVD yang telah anda gunakan untuk menguji proyek mylocation anda, dan pastikan anda masuk ke akun Google. Jika anda belum masuk ke akun, buka peluncur AVD, pilih aplikasi Google, lalu masukkan alamat dan kata sandi Gmail anda.
  • Periksa kembali apakah aplikasi MyLocation tidak terpasang pada perangkat ini. Jika ya, maka copot pemasangannya dengan menyeretnya ke  ikon Uninstall perangkat.
  • Beralih kembali ke jendela android Studio utama dan pilih  Run > Edit configurations
  • Di menu sebelah kiri, pilih   MyLocation-instantapp.
  • Dalam area URL, masukkan URL yang ingin anda uji, yang dalam contoh ini  http://www.example.com/directions .
  • Klik Apply, diikuti oleh OK.
  • Di toolbar Android Studio, klik Run
  • Pilih MyLocation-instantapp.
  • Pilih perangkat target anda, lalu klik OK.

DirectionsActivity anda sekarang muncul di AVD anda. Selamat, anda baru saja membuat aplikasi instan multi fitur! 

Penyelesaian masalah

Harus bergulat dengan bug dan perilaku aneh lainnya adalah bagian dari kesenangan bekerja dengan akses awal dari Android Studio.  

Jika Android Studio build anda rusak, dan anda tidak dapat menemukan sesuatu yang salah dengan proyek anda, maka mungkin saja kesalahan itu mungkin ada pada Android Studio itu sendiri.  

Di bagian ini, saya akan membagikan beberapa solusi untuk semua kesalahan dan kebiasaan Android Studio yang paling umum yang mungkin anda hadapi saat membuat aplikasi instan multi fitur.  

Dan, kalau-kalau anda menghadapi masalah yang tidak tercantum di sini, saya juga akan membagikan daftar perbaikan umum yang dapat membantu anda mengatasi masalah apa pun yang sedang anda hadapi saat ini berkaitan dengan Android Studio.  

Instant App Deployment Gagal di Tingkat API 24 dan 25

Pertama kali anda mencoba menguji aplikasi instan anda di AVD yang menjalankan Nougat, kemungkinan aplikasinya gagal diterapkan. Jika ini terjadi, maka:  

  • Plih  Run> Run mylocation-instantapp dari toolbar Android Studio.
  • Sebelum Android Studio memiliki kesempatan untuk menyelesaikan penggelaran aplikasi anda, pilih  Run > Stop.
  • Pilih Run > Run mylocation-instantapp sekali lagi, tapi kali ini biarkan operasi selesai. Aplikasi instan anda sekarang harus menyebar tanpa masalah.  

Reliability issue with instant app provisioning cache 

Jika anda menemukan pesan kesalahan Reliability issue with instant app provisioning cache saat mencoba menerapkan aplikasi anda, berarti ini anda perlu menghapus cache anda:

  • Pilih Run > Edit configurations… dari toolbar Android Studio.
  • Pilih mylocation-instantapp dari menu sebelah kiri.
  • Pilih Instant app provision (menuju bagian bawah jendela ini).
  • Klik ikon pensil kecil.
  • Pilih Clear provisioned devices cache.
  • Klik OK, diikuti oleh Apply dan OK sekali lagi.  

Isu AAPT2

Jika Android Studio mengeluhkan masalah terkait AAPT2 (seperti menampilkan pesan kesalahan AAPT2 link failed ) maka anda biasanya dapat mengatasi masalah ini dengan menonaktifkan AAPT.

Untuk menonaktifkan AAPT, buka project’s Gradle scripts/gradle.properties file dan tambahkan teks berikut:  

1
android.enableAapt2=false 

Error:(85) attribute 'android:splitName' not found

Ini adalah yang paling membuat frustrasi, dan masalah paling aneh yang mungkin anda hadapi saat mengembangkan aplikasi instan.  

Di beberapa build dari Android Studio 3.0, yang menggunakan karakter dalam nama modul anda bisa tiba-tiba menjadi masalah saat anda mulai menambahkan lebih banyak modul fitur ke proyek anda. Kesalahan ini sangat aneh, karena fitur karakter di banyak contoh aplikasi instan Google, termasuk Codelabs aplikasi instan.  

Jika Android Studio mulai mengeluh tentang atribut android: splitName, maka periksa ulang apakah anda menjalankan rilis terbaru Android Studio 3.0. Anda mungkin juga dapat mengatasi masalah ini dengan membersihkan dan kemudian membangun kembali proyek anda.

Jika masalah berlanjut, maka sebagai upaya terakhir anda mungkin harus meluangkan waktu untuk melakukan setiap modul dan menghapusnya karakter.  

Dan jika All Else Gagal:

  • Bersihkan dan bangun kembali proyek Anda.   Pilih  Build> Clean Project dari toolbar Android Studio, diikuti oleh Clean> Rebuild project.
  • Cobalah AVD yang berbeda.   Jika anda menemukan kesalahan saat mencoba menggunakan aplikasi instan ke AVD, anda harus menguji apakah masalah ini tetap ada saat menggunakan AVD yang memiliki spesifikasi berbeda. Sambil meninggalkan AVD tanpa memverifikasi  Mengapa proyek anda menolak untuk berfngsi di perangkat ini bukanlah sesuatu yang ingin anda bawa ke aplikasi produksi anda, biasanya anda bisa menyingkirkan peraturan bending sedikit saat anda bereksperimen dengan fitur baru pada versi akses awal.  dari Android Studio secara khusus, anda mungkin lebih berhasil saat menguji aplikasi instan anda di AVD yang menjalankan Android O, dibandingkan dengan AVD yang menjalankan versi Android sebelumnya.  
  • Pastikan anda tidak melewatkan pembaruan. Pada saat penulisan, tim Android Studio merilis sebuah Canary baru setiap minggu, jadi selalu layak dicermati bahwa anda memiliki  versi Android Studio terbaru terinstal.  Secara teori, setiap rilis baru harus memperbaiki semua masalah yang ditemukan pada build sebelumnya, jadi jika anda tidak menjalankan versi terbaru maka mungkin saja masalah yang anda alami telah diperbaiki dalam pembuatan yang lebih baru.  

Mendistribusikan Aplikasi Instan Anda

Setelah anda selesai menguji proyek aplikasi instan anda, langkah selanjutnya adalah mengatur beberapa pengujian alfa dan beta, dan kemudian anda siap untuk melepaskan aplikasi anda di depan umum!  

Anda dapat menyelesaikan semua tugas ini melalui Konsol Google Play, dan jika anda pernah meluncurkan aplikasi pemasangan yang "reguler", proses ini seharusnya tidak terasa asing:  

  • Arahkan ke  Play Console.
  • Upload aplikasi Anda, jika anda belum melakukannya.
  • Buka menu samping Play Console dan pilih Semua aplikasi.
  • Pilih aplikasi yang ingin anda uji atau publikasikan.  
  • Pilih Aplikasi Instan Android dari menu sebelah kiri. 

Setup testing and distribution for your instant app components by selecting Android Instant Apps from the Play Consoles left-hand menuSetup testing and distribution for your instant app components by selecting Android Instant Apps from the Play Consoles left-hand menuSetup testing and distribution for your instant app components by selecting Android Instant Apps from the Play Consoles left-hand menu

Anda kemudian dapat memilih dari jenis trek berikut, tergantung pada apakah anda ingin menguji atau memublikasikan aplikasi anda:  

  • Instant app pre-release. Bagian ini berisi semua pengaturan yang anda butuhkan untuk mengirim calon pra-rilis ke penguji anda. Perhatikan bahwa untuk menggunakan setelan ini, anda harus membuat setidaknya satu daftar penguji; Jika belum selesai langkah ini maka anda bisa membuat daftar dengan memilih   Settings > Manage testers > Create list dari menu samping Play Console.  
  • Instant app development. Bagian ini memungkinkan anda untuk menyebarkan aplikasi anda ke penguji anda. Sekali lagi, anda harus membuat setidaknya satu daftar penguji untuk menggunakan pengaturan di bagian ini.  
  • Instant app production. Setelah puas dengan aplikasi anda, bagian ini berisi semua yang anda butuhkan untuk menyiapkan, meninjau, dan menerbitkan aplikasi anda ke Google Play Store.  

Penyelesaian masalah

Saat anda mencoba menerbitkan sebuah proyek yang memiliki dukungan aplikasi instan, ada kemungkinan anda mengalami kesalahan berikut:  

Situs Anda www.example.com ”belum terhubung melalui protokol Digital Aset Link ke aplikasi anda.

Jika ini terjadi, maka periksa bahwa:

  • File Digital Asset Links (assetlinks.json)anda tersedia untuk umum, dan tidak dilindungi oleh bentuk otentikasi, IP internal, atau firewall.  
  • Semua URL yang dipetakan ke modul fitur anda dapat diakses secara eksternal. Jika aplikasi anda menggunakan URL yang hanya tersedia secara internal, anda tidak dapat mengunggah aplikasi ke Konsol Google Play.  
  • Domain yang anda gunakan belum dikaitkan dengan aplikasi lain, karena saat ini beberapa aplikasi instan tidak dapat menggunakan domain yang sama.  
  • Server anda memiliki sertifikat SSL yang valid dari otoritas sertifikat publik atau terpercaya.  

Praktik terbaik

Aplikasi instan adalah cara baru untuk mengonsumsi aplikasi Android, jadi tidak mengherankan jika mereka memiliki praktik terbaik.

Pada bagian ini, kami akan memastikan anda mendapatkan hasil maksimal dari fitur baru ini, dengan melihat beberapa praktik terbaik aplikasi instan.  

Memberikan Sebanyak Mungkin Fungsi Sebelum Meminta Pengguna Masuk

Bukan itu yang biasa bagi aplikasi yang dapat diinstal untuk meminta pengguna membuat akun di layar pertama-lagipula, jika pengguna telah berkomitmen untuk memasang aplikasi, kemungkinan aplikasi tersebut tidak akan ditakuti oleh aplikasi yang meminta alamat email mereka

Namun, aplikasi instan merupakan cerita yang berbeda, karena memungkinkan pengguna meluncurkan modul aplikasi instan tanpa sepengetahuan apa pun tentang aplikasi yang terkait. Bayangkan seorang teman telah mengirimi anda tautan tanpa penjelasan, dan memebuat tautan tersebut akan meluncurkan aplikasi instan.  Anda tidak tahu apa aplikasi ini tawarkan atau siapa yang membuatnya, tapi ia segera meminta alamat email anda-seberapa besar kemungkinan anda menyerahkan informasi ini?

Jika aplikasi instan anda menyertakan pengalaman masuk, anda harus mencoba untuk menunda dialog masuk ini selama mungkin. Memberi pengguna lebih banyak waktu untuk mengalami konten dan fungsi aplikasi anda akan meningkatkan peluang mereka membuat akun saat diminta.  

Bahkan jika installable app anda berkeliling di sekitar pengguna yang sedang membuat akun, anda tetap harus mencoba dan merancang modul aplikasi instan sehingga pengguna dapat menyelesaikan tugas yang mendorong mereka untuk meluncurkan modul ini, sebelum anda meminta mereka untuk membuat account.

Pertimbangkan Entry Point Anda

Sebagian besar aplikasi yang dapat diinstal hanya memiliki beberapa titik masuk - biasanya, ini terbatas pada aktivitas pertama yang dilihat pengguna saat meluncurkan aplikasi anda, dan aktivitas apa pun yang dapat dimulai dengan maksud tersirat atau eksplisit.  

Aplikasi instan punya jauh lebih banyak entry point, karena setiap modul fitur harus memiliki setidaknya satu titik masuk, dan berpotensi memiliki beberapa titik masuk.

Bila anda menambahkan dukungan aplikasi instan ke aplikasi anda, salah satu keputusan terpenting yang perlu anda lakukan adalah kegiatan (atau Kegiatan) mana yang akan dijadikan titik masuk terbaik untuk setiap modul. Anda harus memilih titik masuk anda dengan hati-hati, karena idealnya setiap titik masuk harus:

  1. Izinkan pengguna menyelesaikan tugas yang mendorong mereka untuk meluncurkan modul ini terlebih dahulu.
  2. Buat kesan pertama terbaik bagi pengguna yang mungkin pernah menggunakan aplikasi anda untuk pertama kalinya
  3. Berikan semua konteks yang dibutuhkan pengguna untuk memahami apa yang ditawarkan aplikasi anda, kalau-kalau seseorang meluncurkan modul ini tanpa informasi latar belakang tentang aplikasi anda.  

Berikan Pengalaman yang Seamless untuk Pengguna yang Bermigrasi dari Instan ke Instalasi  

Antarmuka pengguna aplikasi, navigasi, fungsionalitas, dan tampilan dan nuansa keseluruhan Anda harus konstan di semua modul aplikasi instan anda dan APK yang dapat diinstal. Jika anda memberi seseorang perangkat dengan aplikasi anda yang sudah berjalan, mereka seharusnya tidak dapat mengetahui apakah mereka melihat aplikasi instan atau formulir yang dapat diinstal.  

Selain itu, pengguna aplikasi instan mana pun yang mengambil risiko dan menginstal aplikasi anda harus dapat mengambil apa yang mereka tinggalkan. Misalnya, anda dapat mentransfer status aplikasi yang tersimpan dari aplikasi instan ke aplikasi yang dapat dipasang menggunakan cookies atau penyimpanan lokal.  

Membuat Modul ringan yang kecil

Karena aplikasi instan dimuat sesuai permintaan, ukuran biner aplikasi instan memiliki dampak besar pada seberapa mudah pengguna dapat mengakses aplikasi anda.  

Tim Android telah menerapkan batas 4 MB pada setiap komponen aplikasi instan (itu adalah ukuran modul fitur plus modul fitur dasar proyek anda), namun Anda harus mengarahkan modul anda lebih ringan lagi jika memungkinkan.  

Jika anda sedang berjuang untuk merampingkan modul tertentu, lihat secara kritis apa yang anda sertakan di modul itu, karena anda bisa mengolah satu modul menjadi beberapa modul mandiri yang lebih kecil.  

Jangan pernah Gunakan Aplikasi Instan sebagai Iklan untuk Aplikasi yang Dapat Diinstal anda

Meskipun anda seharusnya tidak pernah merancang aplikasi instan semata-mata untuk mengarahkan lalu lintas ke aplikasi yang dapat diinstal, ada dua jenis perintah pemasangan yang bisa anda gunakan di aplikasi instan anda:  

  • Perintah instalasi implisit
  • Perintah instalasi eksplisit

Perintah pemasangan implisit adalah elemen UI yang pengguna berinteraksi dengan mengharapkan untuk memicu fitur tertentu, hanya untuk menemukan perintah instalasi.

Pendekatan ini mengingatkan pada model perizinan runtime Android, karena memungkinkan anda untuk mengeluarkan perintah pemasangan dalam konteks. Dapatkan konteks yang benar, dan anda tidak perlu menjelaskannya Mengapa Anda menampilkan prompt instalasi tertentu.  Misalnya, jika pengguna menemukan perintah instalasi setelah menekan tombol Bagikan rute ini dengan orang lain, maka pesannya jelas: jika anda ingin mengakses fungsi ini, maka anda perlu menginstal aplikasi.  

Jangan sampai terbawa, sampai pada titik di mana aplikasi instan anda mulai terasa seperti iklan untuk aplikasi anda yang dapat diinstal. Pengguna anda akan dengan cepat merasa frustrasi jika aplikasi anda terus-menerus menggoda mereka dengan fungsionalitas yang tidak dapat mereka akses, jadi batasi maksimal tiga permintaan implisit pemasangan per modul aplikasi instan.  Anda juga harus mempertimbangkan dengan cermat dimana Anda menempatkan prompt instalasi ini, untuk menghindari pengguna menghadapi beberapa perintah secara berurutan.  

Perintah instalasi Eksplisit adalah elemen UI yang jelas akan menampilkan dialog penginstalan saat pengguna berinteraksi dengannya, misalnya sebuah tombol dengan "Install app" yang terpampang di bagian depan.  

Semua perintah instalasi eksplisit harus menggunakan Material Design "get app" icon, dan jika anda memasukan teks pendukung kemudian pilih kata-kata anda dengan hati-hati untuk menghindari menciptakan kesan bahwa aplikasi instan anda dengan cara apapun merupakan versi yang tidak lengkap atau lebih kecil dari aplikasi “nyata” anda-jadi hindari mengatakan hal-hal seperti upgrade now atau install the full application!

Pertimbangkan Metrik yang Anda Inginkan

Secara tradisional, melihat jumlah total pemasangan telah menjadi salah satu cara paling efektif untuk mengukur keberhasilan aplikasi. Namun, saat anda menambahkan Dukungan aplikasi instan untuk sebuah proyek, Anda menghapus kebutuhan pengguna untuk memasang aplikasi itu, yang mengharuskan anda memikirkan ulang bagaimana anda mengukur kinerja aplikasi ini.

Daripada menghitung instalasi, anda mungkin ingin mengukur metrik yang terkait dengan tingkat keterlibatan pengguna, seperti berapa banyak waktu yang diinvestasikan pengguna di aplikasi anda, jumlah total tugas yang mereka selesaikan, atau berapa banyak pengguna yang membayar kunjungan berulang ke modul aplikasi instan Anda.  

Penting juga untuk diingat bahwa meskipun APK aplikasi instan dan APK yang dapat diinstal dibangun dari proyek yang sama, namun mereka mewakili dua cara yang sama sekali berbeda dalam mengkonsumsi aplikasi anda. Untuk mendapatkan wawasan yang paling akurat mengenai kinerja aplikasi anda, anda memerlukan cara untuk membedakan metrik yang dikumpulkan dari komponen aplikasi instan anda dan metrik yang dikumpulkan dari aplikasi yang dapat diinstal.  

Kesimpulan

Dalam seri tiga bagian ini, kami melihat bagaimana menambahkan dukungan aplikasi instan ke aplikasi Android anda. Jika anda telah mengikutinya sejak awal, anda akan berhasil membuat proyek yang terdiri dari dua aplikasi instan, yang dipicu oleh berbagai URL.

Jika anda ingin mendapatkan lebih banyak pengalaman dengan aplikasi instan, anda bisa terus menambahkan modul fitur ke proyek ini, atau mengerjakan perluasan modul mylocation-direction sehingga ia menawarkan beberapa fungsi nyata.  

Sementara itu, lihat beberapa posting kami yang lain mengenai pengembangan aplikasi Android!

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.