Jadi untuk mendapatkan pemberitahuan lokal tentang Aiwass, kita perlu meminta izin kepada pengguna dan untuk ini kita dapat menggunakan
paket lain yang kita semua instal dengan instal XPO.
Dan itulah paket izin Expo.
Paket izin Expo, seperti namanya, membantu kami mengelola izin.
Ini membantu kami meminta izin dan bekerja dengan izin.
Jadi, sekali ini dipasang di aplikasi G. S. atau di file lain di mana Anda ingin mendapatkan izin itu.
Tetapi di sini kita hanya memiliki satu komponen.
Kami hanya mengimpor segala sesuatu sebagai izin dari izin expl.
Seperti itu.
Dan dengan ini diimpor, kami perlu meminta izin kepada pengguna untuk menampilkan pemberitahuan sebelum kami mencoba melakukan
itu.
Sekarang, itu tergantung pada aplikasi Anda.
Saat Anda ingin bertanya kepada pengguna, mungkin Anda ingin bertanya kapan aplikasi dimulai.
Mungkin titik waktu yang lebih baik lebih baik.
Setelah semua, Anda ingin meminta izin ketika sangat mungkin bahwa pengguna memberi Anda izin.
Saat ini, Yeater akan melakukannya dengan benar ketika aplikasi dijalankan.
Jadi saya benar-benar akan mengimpor D.
Anda sebagai fakta mengambil di sini dari reaksi.
Sehingga kita bisa menjalankan logika ketika komponen ini dipasang hanya dengan melewatkan array dependensi kosong di sini dan di
sana.
Saya sekarang ingin menggunakan objek izin ini, yang kami impor tahun ini untuk, pertama-tama, periksa
status izin dan setelahnya jika kami tidak memiliki izin untuk memintanya.
Jadi karena itu, di sini kita dapat memanggil get async untuk, pertama-tama, memeriksa status izin saat ini.
Kita sekarang perlu menentukan izin mana.
Kami ingin mendapatkan informasi itu.
Dan karena itu kami dapat mengakses izin, memulai pemberitahuan, cambuk, semua pembatasan, untuk
memeriksa bagaimana status izin saat ini untuk izin pemberitahuan di Android.
Ini tidak akan melakukan apa pun pada Aiwass.
Ini akan mencari tahu apakah kami sudah diizinkan mengirim izin.
Sekarang, ini adalah tugas async dan karena itu memberi kita janji.
Karenanya kita dapat menggunakan maka di sini untuk melanjutkan.
Sekarang di sini, kita akan mendapatkan status izin itu.
Jadi kami akan mendapatkan informasi apakah kami memiliki izin untuk mengirim pemberitahuan atau tidak.
Sekarang kita dapat memeriksa status yang kita dapatkan.
Ada beberapa nilai yang mungkin di sini, tetapi pada akhirnya kami tertarik pada status yang diberikan
jika kami mendapat status ayah.
Kami tidak perlu melanjutkan.
Tetapi jika kita belum harus memberikan status itu, kita ingin meminta izin karena kita belum pernah diberikan
izin itu sebelumnya.
Jadi sekarang kita bisa menggunakan objek izin lagi.
Tapi kali ini kami memanggil ask async sebelum kami memeriksa statusnya.
Sekarang kami meminta izin baru, karena sekarang kami tahu bahwa kami belum memiliki izin yang kami
butuhkan.
Jadi sekarang di sini kita lagi mengakses izin, pikir notifikasi.
Dan sekarang ini akan meminta izin itu.
Ini akan mengembalikan janji.
Jadi kita secara keseluruhan dapat mengembalikannya di sini untuk tetap dalam rantai janji ini, yang kita mulai di sini.
Dan karena itu, sekarang di sini kita dapat kembali menggunakan maka Anda juga bisa menggunakan async menunggu.
Tetapi dalam penggunaan fakta, Anda tidak harus membuat disfungsi async.
Sebagai gantinya, Anda harus membungkus ini menjadi fungsi baru, yang segera Anda jalankan hanya sebagai
catatan.
Tapi di sini akan menggunakan yang lama.
Kemudian tangkap dan akan mencapai fungsi di ini.
Kemudian blokir setelah Aske Async selesai.
Sekarang lagi di sini akan mendapatkan status.
Karena tentu saja, hanya karena kita bertanya bukan berarti kita mendapat izin.
Jadi pengguna mungkin masih menolak izin dan dalam hal ini tidak ada yang bisa kami lakukan.
Jadi sekarang kami ingin memeriksa status ini dan mencari tahu apakah itu masih belum dikabulkan.
Dan jika itu masalahnya, maka, seperti yang saya katakan, tidak ada yang bisa kita lakukan.
Jadi di sini kita bisa kembali.
Kami mungkin menampilkan pesan kepada pengguna.
Kami mungkin menunjukkan peringatan bahwa kami sekarang tidak dapat mengirim pemberitahuan.
Tetapi pada akhirnya, tidak ada yang bisa kita lakukan di sini.
Namun, jika statusnya diberikan, maka kami baik-baik saja.
Sekarang, bagaimanapun juga, kita pasti dapat menjadwalkan pemberitahuan, karena skenario terburuknya adalah kita tidak memiliki izin
dan karenanya tidak ada yang terjadi.
Tapi sekarang kami bertanya, skenario kasus terbaik adalah kami memang mendapatkan izin.
Dan Dale untuk tahun ini akan berhasil.
Tidak, sebenarnya saya harus masuk ke sini.
Kode ini memiliki kesalahan.
Kami tidak mendapatkan string status seperti ini di sini.
Sebagai gantinya, kami mendapatkan objek status, yang kemudian memiliki properti status dan sama dengan case di sini.
Kami hanya tidak mendapatkan kesalahan sebelumnya karena meskipun kode kami secara teknis tidak berfungsi, kami masih
meminta izin.
Tapi sekarang ini benar memeriksa apakah kita memiliki izin.
Dan selain itu, kami juga harus menyesuaikannya di satu tempat lain di sini.
Jika kami sudah memiliki izin, tentu saja kami akan diberikan sebagai tanggapan di sini, semoga, dan tidak
akan bertanya lagi.
Itu berarti bahwa di blok selanjutnya maka kita memiliki masalah, karena di sana kita sekarang berharap untuk mendapatkan negara
kita sebagai objek.
Tetapi karena kita tidak bertanya lagi karena kita tidak perlu tidak akan mendapatkan objek itu di sini.
Jadi mengakses status akan gagal.
Dan kami akan berpikir bahwa kami tidak mendapatkan izin meskipun kami memilikinya.
Jadi di sini kita harus mengembalikan objek status dalam yang pertama, lalu blokir.
Sehingga di blok selanjutnya maka itu adalah cara bertanggung jawab atas kasus-kasus di mana kita sudah memiliki izin.
Ini adalah perubahan yang harus Anda terapkan untuk memastikan bahwa aplikasi Anda mendeteksi dengan benar pemberitahuan
dan status izinnya dan tidak berpikir itu tidak memiliki izin ketika sebenarnya ada.
Jadi mari sekarang keselamatan.
Dan pastikan untuk me-restart itu di simulator iPhone Anda.
Dan sekarang di awal, saya ditanya apakah saya ingin memberikan izin ini karena kode yang baru saja
kami tambahkan.
Dan jika sekarang kita klik memungkinkan di sini dan memicu pemberitahuan dan menutup aplikasi, mari kita lihat apakah itu
sekarang berfungsi di sini di Aiwass.
Mari kita tunggu 10 detik berlalu.
Dan inilah pemberitahuan lokal pertama kami yang dikirim oleh aplikasi kami.
Dan sekarang kita dapat yang bekerja pada ISIS dan Android.
Dan seperti halnya di Android, jika kita mengklik pemberitahuan di sini.
Kita dapat membuka aplikasi kita, jadi itu berfungsi.
Sekarang, satu hal yang tidak berhasil atau di mana tidak ada yang terjadi adalah ketika aplikasi berada di latar depan.
Sekarang, dalam beberapa kasus, itu adalah perilaku yang Anda inginkan.
Dalam beberapa kasus, jika aplikasi terbuka, tidak menampilkan notifikasi mungkin baik-baik saja.
Tetapi jika saya kembali ke contoh aplikasi pengingat, hanya karena itu di latar depan mungkin tidak berarti bahwa
Anda tidak ingin memberi tahu pengguna bahwa ada beberapa tugas yang harus diselesaikan.
Jadi karena itu, izinkan saya berikutnya menunjukkan kepada Anda bagaimana Anda dapat menangani notifikasi jika aplikasi berada di latar depan.