Saat membangun untuk app store, CLI expo, jadi apa yang
kami ketik di sini di baris perintah dapat membantu Anda atau akan membantu Anda
tetapi Anda mungkin perlu mengubah konfigurasi Anda di app. file json tergantung pada fitur yang digunakan aplikasi Anda.
Jadi aplikasi kami di sini menggunakan banyak modul asli, semua modul ini perlu meminta izin dan kami
melakukan ini dengan API izin, seperti misalnya di pemilih gambar di sini ketika kami meminta izin tetapi untuk Android
misalnya, Anda juga perlu memberikan daftar izin yang dibutuhkan aplikasi Anda dalam file konfigurasi yang Anda,
saat Anda menggunakan Bereaksi Asli hanya miliki tetapi yang tidak Anda miliki saat menggunakan expo karena expo menyediakan bungkus ini
dan melakukan semua itu untuk Anda dalam pameran klien tetapi sekarang kami tidak berencana menggunakan klien pameran lagi
dan sementara itu akan memasukkan ini ke dalam
aplikasi mandiri Anda seperti yang saya sebutkan, Anda sekarang perlu memberi tahu expo mana izin yang
harus diminta di sana.
Sebagai tambahan misalnya jika Anda menggunakan Google Maps, Anda juga perlu memberikan kunci Google Maps API Anda dan dengan itu,
saya tidak bermaksud karena kami melakukannya di sini yang kami gunakan di beberapa bagian kode Javascript kami
tetapi untuk gunakan paket React Native maps.
Sekali lagi aplikasi klien expo pada dasarnya menggunakan kunci sendiri untuk pengembangan dan sebagainya, tetapi segera setelah Anda berencana
untuk menawarkan aplikasi mandiri, Anda perlu membawa kunci Anda sendiri sehingga bungkus expo yang akan disertakan dalam
aplikasi mandiri Anda akan menggunakan karena tim expo tidak
akan memberi Anda kunci yang dimiliki oleh mereka untuk itu.
Sekali lagi, dokumen resmi adalah teman Anda, di sana Anda dapat mempelajari
apa yang dapat Anda atur di aplikasi. file json dan
mari kita mulai dengan Android karena di sana, Anda harus mengkonfigurasi lebih banyak sebelum kita
menyelami apa yang spesifik tentang iOS.
Jadi untuk Android, selain ikon dan sebagainya, yang bisa Anda konfigurasi ada izinnya. Sekarang masalahnya adalah Anda hanya bisa menghilangkan kunci
izin dan dalam kasus itu seperti yang Anda lihat di sini, pameran sebenarnya akan mengatur
aplikasi Anda untuk meminta semua izin.
Sekarang saya tidak akan merekomendasikan melakukan itu karena orang-orang akan melihat aplikasi Anda di App Store dan jika
mereka melihat bahwa aplikasi manajemen tempat dasar Anda ingin izin untuk membaca kontak mereka atau melakukan panggilan, baik saya tidak tahu tentang Anda tetapi
saya tidak akan tahu. t mengunduh aplikasi semacam itu.
Jadi rekomendasi saya adalah Anda harus spesifik mengenai izin yang dibutuhkan aplikasi Anda
dan melakukannya dengan masuk ke aplikasi Anda. File json dan di sana di simpul Android, Anda
menambahkan kunci izin dan sekarang Anda menambahkan izin.
Sekarang beberapa izin dasar akan selalu diminta dan Anda menemukan izin ini di sini, misalnya izin untuk mendapatkan
data dari Internet dan sebagainya, tetapi sekarang Anda juga dapat misalnya menambahkan izin untuk menggunakan lokasi pengguna
dan mengakses kamera karena itu adalah sesuatu yang kami akan melakukan.
Jadi mari kita tambahkan kunci ini di sini untuk izin seperti ini, ke kunci string dengan tanda kutip ganda, yang
penting dalam file ini,
ditambahkan ke array izin ini.
Sekarang kita juga akan memerlukan izin penyimpanan eksternal tulis untuk menyimpan gambar kita, jadi kita harus menambahkan itu juga dan dengan itu kita harus
baik untuk
aplikasi ini tetapi tentu saja tergantung pada aplikasi yang sedang Anda buat,
dengan hati-hati periksa izin mana yang digunakan aplikasi
Anda perlu, Anda selalu dapat berkonsultasi halaman dokumentasi paket modul asli yang Anda gunakan, di
sana Anda biasanya harus menemukan
deskripsi izin yang dibutuhkan paket ini. Jadi izin adalah satu
hal, selain itu jika Anda menggunakan Google Maps, Anda harus menambahkan simpul
Google Maps ke konfigurasi Android Anda.
Jadi
di sini setelah izin, kita dapat menambahkan peta Google seperti ini yang juga menyimpan sebuah objek sebagai nilai dan di objek
itu, Anda mengatur kunci API.
Sekali lagi Anda tidak memerlukan itu untuk klien expo ketika kami menerbitkan aplikasi ke halaman expo ini dan menggunakan aplikasi klien
expo karena di sana tim expo pada dasarnya memberi Anda kunci Google Maps sendiri tetapi jika Anda
membuat aplikasi mandiri, Anda perlu memberikan yang Anda sendiri.
Jadi untuk itu, pastikan Anda menggunakan kunci Anda di sini seperti ini dan juga penting dan saya
sudah menyebutkan ini di
modul non-expo, pastikan bahwa di Google API, jadi di Google cloud console saat Anda memeriksa perpustakaan API Anda, Anda pastikan bahwa
peta SDK untuk Android diaktifkan untuk proyek ini yang menjadi milik kunci API
ini.
Jadi di sini
diaktifkan, ini harus menjadi milik proyek yang Anda buat kunci API yang sekarang Anda berikan
di sini, jika tidak ini tidak akan berhasil. Jadi ini adalah izin dan pengaturan Google Map dan Anda
mungkin memerlukan pengaturan khusus lainnya yang dapat Anda
pelajari di sini di aplikasi. file json tergantung pada fitur yang Anda gunakan.
Anda juga dapat mengonfigurasi Tentu saja segala sesuatu
yang lain dan banyak hal, satu hal yang benar-benar perlu Anda berikan untuk membangun aplikasi Anda juga adalah kunci paket ini.
Ini adalah sesuatu yang selalu harus Anda tambahkan apa pun yang
digunakan aplikasi Anda, di sini di simpul Android, Anda harus memberikan kunci paket dan ini sekarang harus memiliki format tertentu.
Itu pada dasarnya adalah URL terbalik, URL fiksi yang tidak harus ada tetapi yang bertindak sebagai pengidentifikasi unik
di seluruh Google Play Store, jadi itu harus URL
terbalik yang tidak pernah digunakan orang lain sebelumnya dan karenanya biasanya jika Anda memiliki sebuah
domain, Anda akan menggunakan domain Anda misalnya com. academind, jadi domain terbalik dan kemudian pengidentifikasi
unik, seperti tempat yang bagus. Anda dapat membuat URL apa pun yang Anda
inginkan di sini, tetapi tentu saja URL itu harus unik dan karena itu Anda harus menggunakan
domain Anda sendiri atau domain fiksi
yang tidak dimiliki oleh siapa pun, jadi bukan akademi karena saya memiliki ini, jadi yang lain domain, pengenal fiksi lainnya yang
memiliki format ini,
itulah yang Anda berikan di sini.
Anda juga perlu memberikan sesuatu yang serupa di iOS, di sana
jika Anda pergi ke iOS, Anda tidak perlu memberikan hal-hal pengaturan izin ini karena izin iOS bekerja secara berbeda,
Anda harus
memberikan kunci Google Maps API jika Anda menggunakan Google Maps versi paket peta untuk iOS,
standar dari paket ini adalah menggunakan Apple Maps dan saya belum mengubah ini di aplikasi saya
jadi saya tidak perlu menyediakan Google Maps API di sini
tapi yang pasti Anda perlu sediakan di sini adalah pengidentifikasi bundel. Jadi ganti paket dengan bundle identifier dan formatnya sama, Anda memiliki
sintaks URL terbalik ini di
sini dan saya akan menamainya com. akademi. tempat-tempat yang bagus dan juga
menggunakan edisi -course di sini di Android.
Jadi pengidentifikasi bundel untuk iOS dan paket untuk Android perlu diatur ke URL unik terbalik tersebut.
Sekarang selain pengidentifikasi ini, Anda juga perlu mengatur sesuatu yang lain, di
iOS Anda perlu menambahkan nomor build, juga di sini di simpul iOS karena itu dan nomor
build harus berupa string yang mengidentifikasi bangunan Anda. Di sana, Anda harus memiliki nomor build seperti versi ini di sana dan
bekerja seperti yang saya jelaskan di sana.
Jadi itu harus berupa angka yang terdiri dari tiga digit di mana Anda memiliki nomor tambalan untuk tambalan, perbaikan bug,
maka nomor pembaruan minor ini untuk fitur-fitur baru yang tidak merusak segalanya dan nomor pembaruan utama ini, Anda dapat
mengubahnya sesuai keinginan Anda tetapi
Anda harus mengubahnya untuk setiap versi baru yang Anda terbitkan dan Anda
menyebarkan dan tentu saja Anda harus mengubahnya sedemikian rupa sehingga Anda mencerminkan apa yang berubah.
Sekarang Anda memerlukan sesuatu yang serupa untuk
Android, jika kita kembali ke dokumentasi Android, di sana kita juga memerlukan kode versi. Jadi di sini kita menambahkan kode versi dan sekarang di
sini ini bukan string tetapi angka yang harus Anda tambahkan satu per satu untuk setiap
rilis baru.
Jadi Anda mulai pada satu,
versi berikutnya yang Anda lepaskan, bahkan jika itu hanya berisi beberapa perbaikan kecil harus dua dan kemudian ke tiga
dan seterusnya.
Jadi itulah yang harus Anda atur di sini, ini adalah cara kerjanya untuk Android, Anda juga menemukan
deskripsi itu di sini dalam dokumentasi dan
dengan itu, kami sekarang siap untuk menggunakan ini atau membangunnya terlebih dahulu dan seperti yang saya
sebutkan, keren Satu hal tentang expo yang dikelola adalah bahwa sekarang Anda dapat membangun ini di
server cloud expo.
Jadi yang harus Anda lakukan adalah menjalankan expo publish untuk mempublikasikan versi terbaru aplikasi Anda ke server expo
seperti yang belum membuatnya sebagai aplikasi mandiri dan sekarang yang saya
dapatkan di sini adalah beberapa peringatan atau kesalahan. Jadi kita melihat bahwa Android seharusnya tidak memiliki properti
tambahan Google Maps,
ya karena itu harus di node konfigurasi,
kesalahan saya.
Jadi Anda harus menambahkan konfigurasi di sini dan di konfigurasi, Anda mungkin memiliki kunci Google Maps
ini, itu adalah kesalahan kecil di pihak saya dan di sini untuk paket, Android sebenarnya tidak suka tanda hubung di sana
tetapi Anda dapat menggunakan garis bawah, jadi mari kita gunakan ini . Dengan perbaikan itu, sekarang mari kita jalankan publikasi expo lagi
untuk memvalidasi ini dan kemudian mempublikasikan versi
terbaru ke server expo yang lagi-lagi belum memulai proses pembangunan tetapi yang merupakan persiapan penting dan
setelah ini selesai, Anda siap untuk juga membangun aplikasi Anda untuk Android dan
iOS.
Sekarang perbedaan antara penerbitan dan pembuatan adalah penerbitan hanya mendorong kode dan konfigurasi Anda ke
server pameran dan kemudian Anda dapat memindai kode batang dengan klien pameran dan seterusnya.
Membangun berarti Anda akan memanfaatkan layanan cloud build expo untuk benar-benar membangun bundel aplikasi Android
atau file iOS IPA, ini adalah
file yang kemudian Anda unggah ke toko aplikasi setelahnya sehingga ada perbedaan
besar di sini. Sekarang bundel yang
Anda buat seperti yang disebutkan sebelumnya ini menyertakan klien expo
sehingga dapat dikatakan, mereka menyertakan ini sebagai pembungkus di sekitar aplikasi Anda, tetapi itu adalah
aplikasi asli asli karena itu, jadi itu adalah aplikasi asli dengan hanya sedikit
pembungkus kecil tambahan di sekitarnya dengan mempertimbangkan konfigurasi yang Anda atur di sini misalnya mengenai izin.
Selain itu, aplikasi yang Anda bangun di server expo yang kemudian dapat Anda distribusikan melalui toko aplikasi akan berbicara
dengan server expo untuk fungsionalitas pembaruan over the air. Jadi Anda masih akan mempublikasikan pembaruan baru dengan publikasi
expo sesudahnya dan aplikasi mandiri Anda yang berjalan pada perangkat lain akan mendapatkan pembaruan yang dipublikasikan
ini, jadi penerbitan tetap penting bahkan
jika Anda sedang membangun aplikasi mandiri, jika Anda membuat bundel aplikasi karena
bundel aplikasi ini akan terus berbicara dengan server pameran untuk mendapatkan versi baru.
Tetapi berbicara tentang itu, bagaimana kita membangun bundel ini sekarang?
Anda melakukan ini dengan perintah expo build dan di sana, Anda telah membangun: Android dan
build: iOS.
Baiklah mari kita mulai dengan build: Android dan seperti namanya, ini membangun aplikasi untuk Android.
Anda dapat mempelajari semua tentang proses pembuatan mandiri di pameran bangunan aplikasi mandiri yang
juga Anda temukan terlampir di sana-sini Anda menemukan konfigurasi dasar yang Anda butuhkan dan
apa yang harus Anda perhitungkan di sana. Untuk Android, di sini Anda menemukan bahwa Anda
juga saat ini setidaknya dapat memilih apakah Anda ingin membangun APK atau file bundel aplikasi,
membangun file bundel
aplikasi direkomendasikan karena itu adalah format yang diinginkan Google dan untuk ini, Anda dapat menjalankan alih-alih hanya expo
build Android, Anda menjalankan expo build Android -t app add-bundle. Jika sekarang Anda menekan enter, ini pada akhirnya akan memvalidasi pengaturan
Anda dan kemudian mendorong kode Anda ke server cloud build expo di mana ini sekarang akan dijadwalkan.
Sekarang pertama-tama, itu akan bertanya kepada Anda karena aplikasi harus ditandatangani, itu terjadi dengan pasangan kunci
publik pribadi yang pada akhirnya digunakan untuk mengidentifikasi Anda sebagai pembuat aplikasi, pembaruan aplikasi di
masa mendatang dan dengan itu saya tidak berarti pembaruan
yang Anda terbitkan ke server expo dengan perintah expo publish tetapi ketika Anda membangun kembali aplikasi,
ketika Anda membangun kembali paket yang kemudian Anda unggah kembali ke toko aplikasi yang kadang-kadang perlu Anda
lakukan jika misalnya Anda mengubah ikon atau hal lain yang tidak dapat dibagikan dengan publikasi expo,
dalam kasus seperti itu,
Anda perlu menandatangani pembaruan dengan kunci yang sama yang Anda gunakan untuk membuat aplikasi asli untuk mengidentifikasi Anda sebagai penulis,
jika tidak, App Store akan menolak
pembaruan ini, itu tidak akan menerima versi aplikasi Anda berikutnya. Jadi karena itu Anda perlu menandatangani aplikasi Anda dan jika Anda
tahu apa yang Anda lakukan, Anda dapat membuat dan mengunggah toko kunci Anda sendiri, tetapi di
sini
saya akan tetap menggunakan versi satu dan membiarkan expo menangani apa yang
berarti akan membuat kunci seperti itu untuk menetapkan dan melakukan semua hal penandatanganan untuk Anda di server mereka, jadi itulah yang
saya pilih di sini.
Sekarang dengan itu, itu lagi membangun aplikasi seperti untuk penerbitan dan meskipun saya sedang membangun aplikasi Android, itu masih membangun untuk iOS di sini karena pada akhirnya
apa yang dilakukannya di sini adalah menerbitkan aplikasi. Jadi mari kita tunggu
ini selesai, sekarang hanya melakukan hal yang sama seperti expo mempublikasikannya tetapi setelah
itu, jadwal ini akan dibangun di server expo.
Jadi sekarang penerbitan sudah selesai dan sekarang menjadwalkan pembuatan seperti itu dan membuatnya dalam antrian, omong-omong ini adalah proses yang sekarang
dapat Anda hentikan seperti yang dikatakan di sini, Anda selalu dapat memeriksa status pembuatan Anda dengan
memasukkan URL ini, Anda Anda
harus masuk dengan akun expo Anda di sana dan kemudian Anda dapat melihat status build.
Sekarang yang
penting, build ini dapat
memakan waktu sangat lama, build itu sendiri tidak begitu banyak tetapi sampai build Anda selesai karena dijadwalkan, perlu
diingat bahwa ini adalah layanan gratis, jadi
tentu saja itu tidak dibangun segera tetapi ketika server expo memiliki ruang untuk itu.
Ini bisa memakan waktu beberapa menit, bahkan berjam-jam sampai itu terjadi, jadi jangan khawatir
jika itu butuh waktu, Anda selalu dapat memeriksa URL ini yang Anda lihat di baris perintah
untuk melihat apa yang terjadi. Jadi Anda dapat keluar dari
sini, ini juga URL tempat Anda nantinya akan menemukan file build, jadi
inilah status build saya jika kami memeriksanya, Anda melihatnya lucu dan sekarang, tidak ada lagi yang terjadi, kami
dapat mengunjungi kembali
nanti untuk melihat proses pembuatan dan unduh bundel aplikasi yang sudah jadi dan untuk sekarang, mari
lakukan hal yang sama untuk iOS.
Ini dapat dilakukan
dengan menjalankan iOS expo build. Sekarang penting, untuk membangun aplikasi iOS, Anda memerlukan akun Pengembang Apple
berbayar, itu harus dimiliki.
Jadi, Anda harus pergi ke pengembang. apel. com dan di sana, Anda harus masuk
dengan ID Apple Anda dan kemudian pada dasarnya mendapatkan akun berbayar, sehingga Anda perlu menambahkan kartu kredit Anda dan membayar
biaya $ 99. Yang diperlukan, tidak ada
jalan lain,
Apple mengharuskan Anda membuat aplikasi yang ingin Anda terbitkan ke toko mereka.
Anda tidak memerlukan itu selama pengembangan
tetapi sekarang untuk berbagi aplikasi, Anda harus memilikinya.
Itu pada dasarnya adalah biaya yang ada di sana hanya untuk memungkinkan orang ke toko yang memiliki setidaknya beberapa jenis
tujuan serius di sana kurasa.
Jadi pastikan Anda masuk di sini dan mengatur akun Pengembang Apple berbayar Anda untuk bergabung dengan Program Pengembang
Apple dan setelah itu, Anda dapat menjalankan perintah ini dan
ia akan meminta Anda untuk masuk dengan akun pengembang apple Anda. Jadi Anda masuk dengan ID Apple dan kata sandi
Anda dan data itu tidak akan disimpan di server pameran, jangan
khawatir, tetapi
perlu mengatur segala sesuatu untuk membangun aplikasi Anda karena untuk proses pembuatan Apple, Anda memerlukan
sertifikat khusus dan seterusnya itu dapat meminta atas nama Anda dengan data ini.
Setelah Anda masuk, ia bertanya kepada Anda bagaimana Anda ingin menangani kredensial Anda, sama seperti sebelumnya jika
Anda tidak tahu apa yang Anda lakukan, Anda harus membiarkan expo menangani semua itu
karena seperti yang saya sebutkan, Anda perlu beberapa sertifikat khusus untuk pada akhirnya membangun aplikasi iOS Anda dan pameran dapat meminta semua itu untuk Anda
dan mengatur semua itu untuk Anda, jadi saya akan membiarkan pameran melakukan ini untuk semua langkah ini dan
sekarang pada dasarnya akan melakukan semua itu untuk Anda.
Sekarang ini juga membangun aplikasi saya di sini untuk iOS dan menerbitkannya terlebih dahulu, itu sama dengan yang kami
lakukan sebelumnya untuk Android dan sekarang kami juga mendapat jadwal pembangunan untuk iOS. Sama seperti sebelumnya, ini di-antri,
Anda bisa keluar dan lihat saja build Anda di browser.
Jadi sekarang kita tidak hanya memiliki antrean Android build tetapi kita juga memiliki antrean iOS build
dan keduanya akan memakan waktu hingga mereka selesai.
Sekarang ada satu hal penting yang juga harus Anda lakukan
setelah pembangunan
Android ini selesai dan belum, Anda harus menjalankan expo fetch: android: keystore.
Sekali lagi ini hanya berfungsi setelah build selesai karena ini kemudian akan mengambil keystore yang
dihasilkan secara otomatis ini yang dihasilkan expo untuk Anda jika Anda memilih itu dalam pengaturan yang Anda perlukan untuk pembaruan
aplikasi ini di masa mendatang. Anda pasti akan membutuhkan itu dan di masa
depan pembaruan ketika Anda membangun kembali aplikasi, Anda kemudian harus memilih bahwa Anda memberikan keystore Anda sendiri dan kemudian Anda
perlu menyediakan keystore ini, jadi masukkan path ke keystore ini yang kemudian Anda unduh.
Jadi perintah ini pada akhirnya akan mengunduh file yang dihasilkan di server expo yang perlu Anda simpan di
sistem Anda untuk pembaruan aplikasi yang sama di masa mendatang,
jika tidak, Anda tidak akan dapat memperbarui.
Jadi itulah beberapa perintah penting yang harus Anda jalankan setelah build ini selesai. Nah dan dengan itu, mari
kita tunggu
sampai selesai, iOS sebenarnya sudah membangun, Android masih
antri tetapi iOS sudah dalam
perjalanan, jadi mari kita tunggu iOS build selesai dan sekarang
ini selesai, sekarang iOS saya membangun selesai.
Sekarang Anda juga dapat memeriksa dokumen resmi tentang bagaimana Anda dapat melanjutkan pengujian ini di perangkat atau
simulator Anda atau kemudian pergi ke bagian di mana Anda mengunggah aplikasi ke Apple App Store dan Google Play Store.
Jadi kami
membangun aplikasi, sekarang Anda dapat mengunggahnya dengan menjalankan expo upload: ios, ini akan secara default menggunakan aplikasi terbaru Anda dan
mengunggahnya ke App Store.
Sekarang bagian yang tidak akan saya lakukan di sini karena saya tidak benar-benar ingin mempublikasikan aplikasi ini di sini tetapi
ini adalah apa yang akan
Anda lakukan sekarang, itu akan menggunakan aplikasi ini yang baru saja dibangun di sini untuk iOS atau
untuk Android, Android build adalah sekarang juga berjalan seperti yang saya lihat, jadi itu akan menggunakan ini dan kemudian mempublikasikan
ini baik dengan perintah ini ke iOS atau dengan perintah ini ke Android, ke Google Play Store.
Sekarang ikuti langkah-langkah yang Anda temukan di sini di dokumen untuk membuat akun yang sesuai
dan mengatur semuanya dengan benar sehingga perintah ini
dapat berhasil dan dengan itu, Anda akan memiliki aplikasi Anda dikerahkan ke Apple App Store dan ke Google
Play Store sehingga Anda bisa membuat aplikasi Anda ke pengguna mana pun di seluruh dunia sebagai aplikasi mandiri, tidak bergantung
pada klien pameran yang diinstal pada perangkat yang cukup rapi.