Apa itu aplikasi mini?

Elemen penyusun dan kompatibilitas

Aplikasi mini adalah aplikasi berukuran kecil (biasanya 2-4 MB) yang memerlukan aplikasi super agar dapat berjalan. Kesamaannya, terlepas dari super app, adalah bahwa keduanya dibuat dengan ("dialek") teknologi web HTML, CSS, dan JavaScript. Runtime aplikasi mini adalah WebView di aplikasi super, bukan sistem operasi yang mendasarinya, yang membuat aplikasi mini lintas platform. Aplikasi mini yang sama dapat berjalan di aplikasi super yang sama, terlepas dari apakah aplikasi super berjalan di Android, iOS, atau OS lain. Namun, tidak semua aplikasi mini dapat berjalan di semua aplikasi super. Info selengkapnya nanti.

Discovery

Aplikasi mini sering kali ditemukan secara ad-hoc melalui kode batang 2D bermerek, yang menyelesaikan tantangan penting offline ke online, misalnya, beralih dari menu restoran fisik ke aplikasi mini pembayaran, atau dari skuter listrik fisik ke aplikasi mini rental. Gambar di bawah menunjukkan contoh kode batang 2D bermerek untuk aplikasi mini demo WeChat. Saat kode dipindai dengan aplikasi super WeChat, aplikasi mini akan langsung diluncurkan. Aplikasi super lainnya biasanya tidak akan dapat mengenali kode batang.

Kode batang 2D bermerek WeChat.
Memindai kode batang 2D ini dengan aplikasi WeChat akan meluncurkan aplikasi mini demo.

Aplikasi mini juga dapat ditemukan melalui penelusuran dalam aplikasi reguler di super app, dibagikan dalam pesan chat, atau menjadi bagian dari item berita di feed berita. Beberapa aplikasi super memiliki konsep akun terverifikasi yang dapat berisi aplikasi mini di profilnya. Aplikasi mini dapat ditandai jika berada di dekat pengguna secara fisik, seperti aplikasi mini bisnis yang berada di depan pengguna, atau secara virtual, seperti saat pengguna mendapatkan rute di peta yang ditampilkan di super aplikasi. Aplikasi mini yang sering digunakan tersedia di panel samping aplikasi yang di banyak super aplikasi dapat diakses melalui gestur geser ke bawah atau melalui bagian khusus di menu super aplikasi.

Pengalaman pengguna

Semua aplikasi super memiliki antarmuka pengguna yang kurang lebih sama untuk aplikasi mini. Panel atas yang dapat diberi tema dengan nama aplikasi mini, dan, di sudut atas layar, tombol tutup di ujung kanan yang didahului oleh menu tindakan yang memberikan akses ke fitur umum seperti membagikan aplikasi, menambahkannya ke daftar favorit atau layar utama, melaporkan aplikasi yang melanggar, memberikan masukan, dan setelan. Screenshot di bawah menunjukkan aplikasi mini belanja yang berjalan dalam konteks aplikasi super Alipay dengan menu tindakan terbuka.

Aplikasi super Alipay yang menjalankan aplikasi mini belanja dengan panel atas, tombol menu tindakan, dan tombol tutup yang ditandai. Menu tindakan akan terbuka.
Membuka menu tindakan aplikasi mini belanja yang berjalan di aplikasi super Alipay.

Paradigma UI

Biasanya ada menu tab bawah untuk navigasi utama aplikasi mini. Sebagian besar penyedia aplikasi super menawarkan komponen yang membantu developer menerapkan paradigma UI umum dengan cepat, seperti carousel, akordeon, status progres, indikator lingkaran berputar, tombol, peta, dan sebagainya. Hal ini juga membantu membuat pengalaman pengguna antara berbagai aplikasi mini menjadi konsisten, yang didorong oleh Panduan Desain Program Mini WeChat. Hal ini mirip dengan insentif yang diberikan Apple dengan Panduan Antarmuka Manusia Apple, dan Google dengan rekomendasi Desain untuk Android.

Aplikasi mini demo Douyin yang menampilkan komponen penggeser (carousel) Douyin dengan tombol untuk maju otomatis, indikator titik, dll.
Komponen penggeser (carousel) Douyin dengan berbagai opsi.

Tayang

Aplikasi mini tidak ditayangkan satu per satu sebagai resource terpisah, tetapi ditayangkan sebagai aplikasi paket terenkripsi, yaitu sebagai arsip yang berisi semua resource dalam satu file. Tidak seperti aplikasi web reguler, aplikasi ini juga tidak ditayangkan dari asal tertentu kreator aplikasi mini, tetapi dari penyedia aplikasi super secara langsung. Aplikasi tersebut masih dapat mengakses API dari server pembuat aplikasi mini, tetapi resource inti (biasanya disebut sebagai shell aplikasi), harus ditayangkan dari penyedia super aplikasi. Aplikasi mini harus mendeklarasikan origin tempat mereka meminta data tambahan.

Caching, update, dan deep linking

Aplikasi mini disimpan dalam cache aplikasi super, sehingga saat pengguna meluncurkan aplikasi mini yang di-cache lagi, aplikasi tersebut akan dimuat hampir seketika. Jika ada update, paket aplikasi baru akan dimuat. Nomor versi dapat menjadi bagian dari URI peluncuran (lihat Penemuan), sehingga aplikasi super mengetahui sejak awal apakah versi yang di-cache secara lokal masih terbaru. URI peluncuran juga secara opsional berisi halaman aplikasi mini yang diinginkan, sehingga deep linking ke halaman tertentu aplikasi mini dapat dilakukan. Melalui peta situs, aplikasi mini dapat mendeklarasikan halaman mana yang harus dapat diindeks oleh crawler aplikasi mini penyedia aplikasi super.

macOS Finder menampilkan folder yang berisi file `.wxapkg` aplikasi mini WeChat yang di-cache.
Aplikasi mini di-cache sebagai aplikasi paket terenkripsi.

Keamanan dan izin

Aplikasi mini ditinjau oleh penyedia aplikasi super, yang berarti pengguna menganggapnya lebih aman daripada aplikasi web. Mereka harus mendeklarasikan izin yang berpotensi diperlukan sebelumnya dalam manifes atau file konfigurasi aplikasi mini, yang, untuk beberapa penyedia, juga memerlukan penjelasan tentang alasan setiap izin diperlukan. Aplikasi mini tentu saja masih dapat berbohong, tetapi akan kesulitan membenarkan alasan, misalnya, mencoba mengakses sensor gerakan tanpa alasan yang jelas bagi pengguna. Insentif untuk mengambil sidik jari pengguna jauh lebih rendah dibandingkan dengan web, karena pengguna biasanya sudah login ke aplikasi super (lihat Identitas, pembayaran, dan grafik sosial).

Setiap kali aplikasi mini melakukan operasi yang memerlukan izin khusus, perintah akan ditampilkan kepada pengguna yang, jika diterapkan oleh platform, juga menyertakan justifikasi penggunaan, seperti yang dinyatakan oleh developer. Screenshot di bawah menunjukkan aplikasi mini demo Douyin saat meminta izin kepada pengguna untuk membagikan lokasi mereka. Di beberapa aplikasi super, ada juga API imperatif yang dapat dimanfaatkan aplikasi mini untuk meminta izin tanpa langsung menggunakannya, atau hanya memeriksa status izin. Hal ini bahkan dapat mencakup API untuk membuka setelan izin super app sentral, yang sesuai dengan Setelan Situs Chrome. Aplikasi mini juga harus mendeklarasikan terlebih dahulu asal semua server yang berpotensi meminta data darinya.

Aplikasi mini demo Douyin yang menampilkan perintah geolokasi dengan dua opsi: 'Tidak Diizinkan' dan 'Diizinkan'.
Aplikasi mini demo Douyin yang meminta izin akses geolokasi.

Akses ke fitur canggih

Aplikasi super hosting menawarkan akses ke API yang canggih melalui jembatan JavaScript yang dimasukkan ke dalam WebView yang ditawarkan oleh aplikasi super (lihat Blok penyusun dan kompatibilitas). Jembatan JavaScript ini menyediakan hook ke API sistem operasi. Misalnya, fungsi JavaScript aplikasi mini seperti getConnectedWifi()—kemampuan aplikasi mini untuk mendapatkan nama jaringan Wi-Fi yang saat ini aktif—di balik layar difasilitasi melalui getConnectionInfo() API Android atau CNCopyCurrentNetworkInfo() API iOS. Contoh lain API perangkat yang canggih yang ditampilkan di aplikasi super umum adalah Bluetooth, NFC, iBeacon, GPS, papan klip sistem, sensor orientasi, informasi baterai, akses kalender, akses buku telepon, kontrol kecerahan layar, akses sistem file, hardware getaran untuk masukan fisik, akses kamera dan mikrofon, perekaman layar dan pembuatan screenshot, status jaringan, soket UDP, pemindaian kode batang, informasi memori perangkat, dan lainnya.

Aplikasi mini demo WeChat yang menampilkan penggeser yang mengontrol kecerahan layar perangkat yang dipindahkan ke posisi maksimum.
Aplikasi mini demo WeChat yang menyetel kecerahan layar perangkat ke maksimum.

Akses ke layanan cloud

Banyak super app juga menyediakan akses "tanpa server" ke layanan cloud dari penyedia super app yang, selain cloud computing mentah dan penyimpanan cloud, sering kali juga menyertakan tugas tingkat tinggi seperti terjemahan teks, deteksi objek, atau klasifikasi konten dalam gambar, pengenalan ucapan, atau tugas Machine Learning lainnya. Aplikasi mini dapat dimonetisasi dengan iklan, yang biasanya disediakan oleh penyedia aplikasi super. Platform super app biasanya juga menyediakan data analisis cloud, sehingga developer aplikasi mini dapat lebih memahami cara pengguna berinteraksi dengan aplikasi mereka.

Identitas, pembayaran, grafik sosial

Fitur yang sangat penting dari aplikasi mini adalah informasi identitas dan grafik sosial yang dibagikan dari aplikasi super. Aplikasi super seperti Douyin atau WeChat dimulai sebagai situs jejaring sosial dalam arti luas, tempat pengguna memiliki identitas (terkadang bahkan diverifikasi pemerintah), jaringan teman atau pengikut, dan sering kali juga menyimpan data pembayaran. Misalnya, aplikasi mini belanja dapat (atau terkadang bahkan harus) memproses pembayaran apa pun secara langsung melalui API pembayaran super aplikasi dan, setelah izin pengguna, dapat memperoleh data pengguna seperti alamat pengiriman, nomor telepon, dan nama lengkap mereka, semuanya tanpa harus memaksa pengguna untuk mengisi formulir yang merepotkan. Di bawah ini, Anda dapat melihat aplikasi mini Walmart yang berjalan di WeChat, dibuka untuk pertama kalinya, menyapa saya dengan wajah yang sudah dikenal.

Aplikasi mini Walmart yang menampilkan wajah dan nama penulis di tab 'Saya'.
Aplikasi mini Walmart dengan tampilan "Saya" yang dipersonalisasi pada kunjungan pertama.

Aplikasi mini dapat menjadi sangat populer dengan memungkinkan pengguna membagikan pencapaian mereka seperti skor tertinggi dalam game dan menantang kontak mereka melalui pembaruan status. Aplikasi mini kemudian hanya berjarak satu ketuk, sehingga pengguna dapat memasuki kompetisi tanpa hambatan apa pun dan aplikasi mini akan memperluas jangkauannya.

Ucapan terima kasih

Artikel ini ditinjau oleh Joe Medley, Kayce Basques, Milica Mihajlija, Alan Kent, dan Keith Gu.