Anda di halaman 1dari 17

Proses Persetujuan dan Distribusi di

App Store dan Google Play


Dalam era digital saat ini, aplikasi mobile
telah menjadi bagian integral dari
kehidupan sehari-hari pengguna. App
Store dan Google Play merupakan
platform utama yang digunakan oleh
pengembang untuk mendistribusikan
aplikasi mereka kepada pengguna.
Namun, sebelum aplikasi dapat tersedia
untuk pengguna, pengembang harus
melewati proses persetujuan dan
distribusi yang ditetapkan oleh App Store
dan Google Play. Dalam makalah ini, kami
akan membahas secara rinci tentang
persyaratan, tahapan proses, distribusi
aplikasi, serta tantangan dan solusi yang
mungkin dihadapi oleh pengembang
selama proses ini.
I. Persyaratan App Store dan Google Play
App Store dan Google Play memiliki
persyaratan yang harus dipenuhi oleh
pengembang aplikasi sebelum aplikasi
dapat disetujui dan didistribusikan.
Persyaratan ini mencakup aspek seperti
keamanan, privasi, fungsionalitas, dan
konten yang sesuai. Pengembang harus
memastikan bahwa aplikasi mereka
memenuhi persyaratan ini sebelum
mengajukan aplikasi ke App Store atau
Google Play. Persyaratan ini dirancang
untuk melindungi pengguna dan
memastikan pengalaman yang baik saat
menggunakan aplikasi.

App Store and Google Play


Pengujian
Banyak aplikasi (bahkan aplikasi Android, di beberapa
toko) harus melewati proses persetujuan sebelum
dipublikasikan; jadi pengujian sangat penting untuk
memastikan aplikasi Anda mencapai pasar (apalagi
berhasil dengan pelanggan Anda). Pengujian dapat
mengambil banyak bentuk, mulai dari pengujian unit
tingkat pengembang hingga mengelola pengujian beta
di berbagai perangkat keras.

Uji di Semua Platform

Ada sedikit perbedaan antara apa yang didukung .NET


pada ponsel Windows, tablet, dan perangkat desktop,
serta batasan pada iOS yang mencegah kode dinamis
dihasilkan dengan cepat. Rencanakan pengujian kode
pada beberapa platform saat Anda
mengembangkannya, atau jadwalkan waktu untuk
merefaktor dan memperbarui bagian model aplikasi
Anda di akhir proyek.
Selalu merupakan praktik yang baik untuk
menggunakan simulator/emulator untuk menguji
beberapa versi sistem operasi dan juga
kemampuan/konfigurasi perangkat yang berbeda.
Anda juga harus menguji perangkat keras fisik sebanyak
mungkin.

Perangkat di cloudi
Ekosistem ponsel dan tablet terus berkembang,
sehingga tidak mungkin untuk menguji jumlah
perangkat yang terus meningkat yang tersedia. Untuk
mengatasi masalah ini, sejumlah layanan menawarkan
kemampuan untuk mengontrol berbagai perangkat dari
jarak jauh sehingga aplikasi dapat diinstal dan diuji
tanpa perlu langsung berinvestasi dalam banyak
perangkat keras.
App Center Test menawarkan cara mudah untuk
menguji aplikasi iOS dan Android di ratusan perangkat
yang berbeda. Untuk informasi selengkapnya,
lihat Menyiapkan Aplikasi
Xamarin.Android dan Menyiapkan aplikasi Xamarin.iOS.
Manajemen Pengujian

Saat menguji aplikasi dalam organisasi Anda atau


mengelola program beta dengan pengguna eksternal,
ada dua tantangan:
 Distribusi – Mengelola proses provisi (terutama

untuk perangkat iOS) dan mendapatkan versi


perangkat lunak yang diperbarui kepada
penguji.
 Umpan balik – Mengumpulkan informasi

tentang penggunaan aplikasi, dan informasi


terperinci tentang kesalahan apa pun yang
mungkin terjadi.
Ada sejumlah layanan yang membantu mengatasi
masalah ini, dengan menyediakan infrastruktur yang
dibangun ke dalam aplikasi Anda untuk mengumpulkan
dan melaporkan penggunaan dan kesalahan, dan juga
menyederhanakan proses provisi untuk membantu
mendaftar dan mengelola penguji dan perangkat
mereka.
Visual Studio App Center menawarkan solusi untuk
masalah ini, menyediakan distribusi versi pengujian,
pelaporan crash, dan informasi penggunaan aplikasi
yang canggih.
Uji Otomatisasi

Xamarin UITest dapat digunakan untuk membuat skrip


uji antarmuka pengguna otomatis yang dapat dijalankan
secara lokal atau diunggah ke Pengujian App Center.

Pengujian Unit

Touch.Unit

Xamarin.iOS mencakup kerangka kerja pengujian unit


yang disebut Touch.Unit yang mengikuti tes penulisan
gaya JUnit/NUnit.
Lihat dokumentasi Pengujian Unit dengan
Xamarin.iOS kami untuk detail tentang menulis tes dan
menjalankan Touch.Unit.

Andr.Unit

Ada sumber terbuka yang setara dengan Touch.Unit


untuk Android yang disebut Andr.Unit. Anda dapat
mengunduhnya dari github dan membaca tentang alat
di blog @spouliot.

Persetujuan App Store


Apple dan Microsoft mengoperasikan satu-satunya toko
di platform mereka: masing-masing App Store dan
Marketplace. Baik mengunci perangkat mereka dan
menerapkan proses peninjauan aplikasi yang ketat untuk
mengontrol kualitas aplikasi yang tersedia untuk
diunduh. Sifat terbuka Android berarti ada sejumlah opsi
toko mulai dari Google Play, yang tersedia secara luas
dan tidak memiliki proses peninjauan, hingga Appstore
Amazon untuk Android dan upaya khusus perangkat
keras seperti Samsung Apps yang memiliki distribusi
yang lebih terbatas dan menerapkan proses persetujuan.
Menunggu aplikasi ditinjau bisa sangat menegangkan -
tekanan bisnis sering kali berarti aplikasi diajukan untuk
persetujuan dengan margin yang sangat sedikit untuk
kesalahan sebelum tanggal peluncuran "ditargetkan".
Prosesnya sendiri dapat memakan waktu hingga dua
minggu dan belum tentu transparan: ada umpan balik
terbatas tentang kemajuan aplikasi Anda sampai
akhirnya ditolak atau disetujui. Penolakan dapat berarti
kehilangan jendela peluang pemasaran, terutama jika itu
terjadi lebih dari sekali, dan minggu berlalu antara
tanggal peluncuran asli Anda dan kapan aplikasi
akhirnya disetujui.

Bersiaplah

Saran pertama: rencanakan peluncuran aplikasi Anda


dengan baik sebelumnya dan buat tunjangan untuk
kemungkinan penolakan dan pengiriman ulang. Setiap
toko mengharuskan Anda membuat akun sebelum
mengirimkan aplikasi - lakukan ini sedini mungkin.
Meskipun pendaftaran Google Play hanya memakan
waktu beberapa menit jika aplikasi Anda gratis,
prosesnya menjadi lebih terlibat jika Anda menjualnya
dan perlu menyediakan informasi perbankan dan pajak.
Proses Apple dan Microsoft keduanya jauh lebih terlibat
daripada Google, bisa memakan waktu seminggu atau
lebih untuk menyetujui akun Anda sehingga
memperhitungkan waktu ini ke dalam rencana
peluncuran Anda.
Setelah akun Anda disetujui, Anda siap untuk
mengirimkan aplikasi. Proses aktual untuk mengirimkan
aplikasi tercakup dalam dokumentasi berikut:
 Menerbitkan ke App Store iOS Apple

 Menyiapkan aplikasi untuk Google Play

 Pengembang Windows harus

mengunjungi Windows Dev Center untuk


membaca tentang mengirimkan aplikasi mereka.
Sisa bagian ini membahas hal-hal yang harus Anda
pertimbangkan untuk memastikan aplikasi Anda
disetujui tanpa hambatan.

Kualitas

Kedengarannya jelas, tetapi aplikasi akan sering ditolak


karena tidak memenuhi tingkat kualitas tertentu:
bagaimanapun, ini adalah alasan mengapa toko yang
dikumpulkan memiliki proses persetujuan di tempat
pertama!
Crash adalah alasan umum untuk penolakan. Jika terlalu
mudah untuk membuat aplikasi Anda crash, dijamin
akan ditolak. Sebagian besar pengembang tidak
mengirimkan aplikasi mereka dengan harapan bahwa
mereka akan crash, namun sering mereka lakukan. Uji
aplikasi Anda secara menyeluruh sebelum
mengirimkannya, berfokus tidak hanya pada
memastikan semuanya berfungsi tetapi juga bahwa
Anda menangani skenario kesalahan seluler umum
seperti masalah jaringan dan batasan sumber daya
seperti memori atau ruang penyimpanan. Gunakan
simulator dan perangkat fisik untuk menguji - terlepas
dari seberapa baik kode berjalan di simulator, hanya
perangkat yang dapat menunjukkan performa nyata
aplikasi. Gunakan sebanyak mungkin perangkat yang
dapat Anda temukan, dan daftarkan tim penguji beta
jika Anda bisa - layanan pihak ketiga dapat membantu
mengelola distribusi dan umpan balik beta.
Semua sistem operasi seluler akan mematikan aplikasi
yang tidak dimulai dengan cukup cepat. Lamanya waktu
yang diizinkan bervariasi, tetapi dalam aplikasi umum
harus bertujuan untuk responsif dalam beberapa detik
dan menggunakan tugas latar belakang untuk
melakukan pekerjaan apa pun yang akan memakan
waktu lebih lama. Aplikasi yang membutuhkan waktu
terlalu lama untuk dimuat, atau tidak cukup responsif
dalam penggunaan reguler akan ditolak. Selalu berikan
umpan balik pengguna ketika sesuatu terjadi di latar
belakang, atau aplikasi akan tampak mengalami crash
dan sekali lagi, ditolak.
Periksa Kasus Edge Anda

Perangkap umum bagi pengembang gagal mengatasi


kasus tepi, terutama yang memerlukan konfigurasi ulang
simulator atau perangkat mereka untuk diuji dengan
benar. Mudah untuk melupakan bahwa tidak setiap
pelanggan akan "Mengizinkan" aplikasi Anda untuk
mengakses lokasi mereka karena setelah pengembang
menerima permintaan sekali, mereka tidak akan pernah
diminta lagi. Izin dan penggunaan jaringan secara
khusus difokuskan selama proses persetujuan, yang
berarti pengawasan kecil di area ini dapat
mengakibatkan penolakan.
Daftar berikut ini adalah titik awal yang baik untuk
memeriksa kasus tepi yang mungkin terlewatkan:
 Pelanggan dapat 'menolak' akses ke

layanan - terutama di iOS, akses ke data seperti


informasi lokasi geografis hanya disediakan jika
pengguna memberikan izin ke aplikasi Anda.
Penguji aplikasi harus sering menginstal ulang
aplikasi dalam keadaan awal dan melarang
permintaan izin apa pun untuk memastikan
aplikasi bersifat tepat. Alihkan izin aktif dan
nonaktif untuk memverifikasi perilaku yang
benar saat pelanggan berubah pikiran.
 Pelanggan ada di mana-mana - jangan

berasumsi bahwa aplikasi hanya akan digunakan


di kota atau negara tempat aplikasi
dikembangkan! Kode yang berfungsi dengan
koordinat GPS, nilai tanggal dan waktu serta
mata uang semuanya dapat dipengaruhi oleh
lokasi pelanggan dan pengaturan lokal. Semua
platform menawarkan simulator yang
memungkinkan Anda menentukan lokasi dan
lokal yang berbeda - gunakan untuk menguji
lokasi di belahan bumi lain dan dengan budaya
yang memformat tanggal dan mata uang secara
berbeda. Nilai garis lintang dan bujur bisa positif
atau negatif, pemisah desimal bisa berupa titik
atau koma, dan tanggal dapat diformat
segudang cara - menanganinya!
 Koneksi jaringan yang lambat - pengembang
aplikasi sering bekerja di 'dunia ideal'
konektivitas jaringan yang cepat dan selalu
berfungsi, yang jelas tidak terjadi di dunia nyata.
Pengujian dengan konektivitas jaringan yang
lambat (seperti koneksi 3G yang buruk) serta
tanpa akses jaringan sangat penting untuk
memastikan Anda tidak mengirim aplikasi
buggy. Proses persetujuan akan selalu
menyertakan pengujian dengan perangkat
dalam mode pesawat, jadi pastikan Anda telah
mengujinya sendiri.
 Perangkat keras bervariasi - ingatlah untuk
menguji pada perangkat keras terlama dan
terlambat yang Anda rencanakan untuk
didukung. Ada dua aspek yang mungkin
memengaruhi aplikasi Anda: performa, yang
mungkin tidak dapat digunakan pada perangkat
yang lebih lama, dan dukungan untuk fitur
perangkat keras seperti kamera, mikrofon, GPS,
giroskop, atau komponen opsional lainnya.
Aplikasi harus diturunkan dengan baik (dan
tidak crash) ketika komponen tidak tersedia.

Pedoman lebih dari sekadar 'panduan'

Apple terkenal tegas tentang kepatuhan terhadap


Pedoman Antarmuka Manusia mereka sebagai salah
satu kekuatan utama platform mereka adalah
konsistensi (dan peningkatan kegunaan yang dirasakan).
Microsoft telah mengambil pendekatan serupa dengan
aplikasi Windows yang menerapkan Sistem Fluent
Design. Proses persetujuan untuk kedua platform akan
melibatkan aplikasi Anda yang dievaluasi karena
kepatuhannya terhadap filosofi desain yang relevan.
Itu bukan berarti bahwa inovasi antarmuka pengguna
tidak didukung atau didorong, tetapi ada hal-hal
tertentu yang "tidak boleh Anda lakukan" atau aplikasi
Anda akan ditolak.
Di iOS, ini termasuk menyalahgunakan ikon bawaan atau
menggunakan metafora mapan lainnya dengan cara
yang tidak konsisten; misalnya menggunakan ikon 'buat'
untuk apa pun selain membuat konten baru.
Pengembang Windows harus sama-sama berhati-hati;
kesalahan umum gagal mendukung tombol Kembali
perangkat keras dengan benar sesuai dengan pedoman
Microsoft.
Dorong desainer Anda untuk membaca dan mengikuti
panduan desain untuk setiap platform.

Menerapkan Fitur Platform-Specific

Hal-hal yang sedikit lebih ketat dalam hal menerapkan


layanan khusus platform, terutama di iOS. Untuk
menghindari penolakan otomatis oleh Apple, ada
beberapa aturan yang harus diikuti dengan fitur iOS
berikut:
 Pembelian Dalam Aplikasi – Aplikasi TIDAK

boleh menerapkan mekanisme pembayaran


eksternal untuk produk digital termasuk mata
uang dalam game, fitur aplikasi, langganan
majalah, dan banyak lagi. App iOS harus
menggunakan layanan berbasis iTunes Apple
untuk fungsionalitas semacam ini. Ada celah -
aplikasi seperti Kindle Reader dan beberapa
aplikasi berbasis langganan memungkinkan
Anda membeli konten di tempat lain yang
dilampirkan ke "akun" yang kemudian dapat
Anda akses melalui aplikasi, namun dalam hal ini
aplikasi tidak boleh berisi tautan atau referensi
ke proses pembelian di luar aplikasi (atau, sekali
lagi, itu akan ditolak).
 Pencadangan iCloud – Dengan munculnya

iCloud, peninjau Apple jauh lebih ketat


mengenai cara aplikasi menggunakan
penyimpanan (untuk memastikan pengalaman
pencadangan jarak jauh pelanggan
menyenangkan). Aplikasi yang membuang
ruang penyimpanan yang dapat dicadangkan
mungkin ditolak, jadi gunakan folder Cache
dengan tepat dan ikuti pedoman terkait
penyimpanan Apple lainnya.
 Surat kabar – Aplikasi koran dan majalah sangat
cocok untuk Newsstand Apple, namun aplikasi
harus menerapkan setidaknya satu langganan
perpanjangan otomatis dan mendukung
pengunduhan latar belakang untuk disetujui.
 Peta - Semakin umum untuk menambahkan
overlay dan fitur lain ke peta seluler, namun
berhati-hatilah untuk tidak mengaburkan
informasi 'kredit' peta (seperti logo Google di
iOS5) karena melakukannya akan
mengakibatkan penolakan.

Mengelola Metadata Anda

Selain masalah teknis yang jelas yang dapat


mengakibatkan aplikasi ditolak, ada beberapa aspek
yang lebih halus dari pengiriman Anda yang dapat
mengakibatkan penolakan, terutama di sekitar metadata
(deskripsi, kata kunci dan gambar pemasaran) yang
Anda kirimkan dengan aplikasi Anda untuk ditampilkan
dalam App Store atau Marketplace.
 Citra – Ikuti panduan platform untuk ikon
aplikasi dan simpan gambar. Jangan gunakan
gambar merek dagang, kami telah melihat
aplikasi ditolak karena ikonnya menampilkan
gambar iPhone!
 Merek dagang – Hindari menggunakan merek

dagang apa pun selain milik Anda sendiri.


Aplikasi telah ditolak karena menyebutkan
merek dagang dalam deskripsi aplikasi atau
bahkan dalam kata kunci di App Store Apple.
 Deskripsi – Jangan gunakan kata 'beta' atau

dengan cara apa pun menunjukkan bahwa


aplikasi tidak siap untuk prime time. Jangan
sebutkan platform seluler lainnya (bahkan jika
aplikasi Anda lintas platform). Yang paling
penting, pastikan aplikasi melakukan apa yang
Anda katakan. Jika Anda mencantumkan banyak
fitur dalam deskripsi Anda, sebaiknya jelas cara
menggunakan masing-masing fitur tersebut
atau Anda akan mendapatkan penolakan "fitur
yang disebutkan dalam deskripsi aplikasi tidak
diimplementasikan".
Lakukan upaya sebanyak mungkin ke dalam metadata
aplikasi sebagai pengembangan dan pengujian. Aplikasi
DO ditolak karena pelanggaran kecil dalam metadata
sehingga ada baiknya meluangkan waktu untuk
memperbaikinya.
App Stores: Tidak Untuk Semua Orang

Fokus utama toko pada setiap platform adalah distribusi


konsumen - kemampuan untuk menjangkau pelanggan
sebanyak mungkin. Namun tidak semua aplikasi
ditargetkan pada konsumen, ada basis aplikasi internal
dan ekstranet seperti yang berkembang pesat yang
memerlukan distribusi terbatas kepada karyawan,
pemasok, atau pelanggan. Aplikasi ini tidak "dijual" dan
tidak memerlukan persetujuan, karena pengembang
mengontrol distribusi ke sekelompok pengguna
tertutup. Dukungan untuk jenis penyebaran ini bervariasi
menurut platform.
Android menawarkan fleksibilitas terbanyak dalam hal
ini: aplikasi dapat diinstal langsung dari URL atau
lampiran email (selama konfigurasi perangkat
memungkinkannya). Ini berarti sepele untuk membuat
dan mendistribusikan aplikasi perusahaan internal atau
menerbitkan aplikasi kepada pelanggan atau pemasok
tertentu.
Apple menyediakan opsi penyebaran internal kepada
pengembang yang terdaftar dalam Program Perusahaan
Pengembang iOS, yang melewati proses persetujuan
App Store dan memungkinkan perusahaan untuk
mendistribusikan aplikasi internal kepada karyawan
mereka. Sayangnya lisensi ini tidak mengatasi kebutuhan
distribusi aplikasi seperti ekstranet ke grup tertutup
pelanggan atau pemasok lainnya. Penyebaran Enterprise
(dan Ad-Hoc)
Ringkasan App Store

Proses peninjauan dapat menakutkan, tetapi seperti


siklus hidup pengembangan lainnya, Anda dapat
membantu memastikan keberhasilan dengan beberapa
perencanaan dan perhatian terhadap detail. Semuanya
bermula dari beberapa langkah sederhana: baca dan
pahami panduan antarmuka pengguna yang harus Anda
patuhi, ikuti aturan jika Anda menerapkan fitur khusus
platform, uji secara menyeluruh (kemudian uji beberapa
lagi) dan akhirnya pastikan metadata aplikasi Anda
benar sebelum Anda mengirimkan.
Satu kata saran terakhir kepada developer yang
memublikasikan di Google Play: kurangnya proses
persetujuan mungkin tampak seperti membuat
pekerjaan Anda lebih mudah - tetapi pelanggan Anda
akan lebih menuntut daripada tim peninjau. Ikuti
panduan ini seolah-olah aplikasi Anda bisa ditolak, jika
tidak, pelanggan Anda akan melakukan penolakan.

Anda mungkin juga menyukai