Sebelum program mini memanggil API JavaScript terkait perangkat (lihat daftar ruang lingkup berikut untuk antarmuka yang sesuai), program mini harus terlebih dahulu meminta otorisasi dari pengguna. Saat API dipanggil, jendela pop-up akan muncul untuk menanyakan apakah pengguna menyetujui pemberian izin kepada program mini agar dapat menggunakan fungsi tertentu atau mengakses beberapa data pengguna, namun API JavaScript terkait tidak akan langsung dipanggil. Jika pengguna telah memberikan otorisasi sebelumnya, pop-up tidak akan ditampilkan dan pemanggilan akan langsung mengembalikan status berhasil.
Parameter permintaan
Parameter | Tipe | Diperlukan | Deskripsi |
scope | String | Ya | Ruang lingkup otorisasi perangkat pengguna yang ingin Anda peroleh. |
success | Fungsi | Tidak | Fungsi panggilan balik untuk otorisasi yang berhasil. |
fail | Fungsi | Tidak | Fungsi panggilan balik untuk otorisasi yang gagal. |
scope
scope | Deskripsi | antarmuka yang sesuai |
location | Lokasi geografis | |
camera | Kamera | |
bluetooth | The bluetooth | WVBluetooth semua metode |
album | Album | |
contacts | Kontak | WVContacts semua metode |
microphone | Mikrofon | |
file | File | WVFile semua metode |
call | Panggilan | |
vibrate | Getar | |
screen | Layar |
Parameter respons
Fungsi panggilan balik untuk pemanggilan yang berhasil menerima sebuah objek. Tabel berikut menjelaskan atribut objek tersebut.
Atribut | Tipe | Deskripsi |
successScopes | JSONObject | Cakupan otorisasi perangkat pengguna yang diberikan kepada program mini. |
msg | String | Pesan kesalahan |
Fungsi panggilan balik untuk pemanggilan yang gagal menerima sebuah objek. Tabel berikut menjelaskan pesan kesalahan, deskripsi kesalahan, serta solusi yang sesuai dalam objek tersebut.
Pesan kesalahan | Deskripsi Kesalahan | Solusi |
Anda perlu mengonfigurasi saklar otorisasi untuk mengajukan otorisasi | Perlu mengaktifkan saklar otorisasi | Periksa apakah saklar otorisasi diaktifkan |
Pengecualian penguraian parameter | Pengecualian penguraian data | Periksa format data. |
Ruang lingkup otorisasi tidak boleh kosong | Ruang lingkup bernilai null | Periksa ruang lingkup. |
Pengguna belum terikat | Container membutuhkan pendaftaran userid | Periksa informasi pendaftaran pengguna container. |
Pengguna menolak permintaan otorisasi | Pengguna menolak otorisasi | Anda dapat menjelaskan tujuan fungsi secara rinci untuk mendapatkan otorisasi. |
Otorisasi yang Anda minta tidak ada. Harap periksa parameter | Ruang lingkup tidak termasuk dalam ruang lingkup | Ruang lingkup berisi nilai yang tidak valid. Harap periksa parameter ruang lingkup. |
Kode contoh
window.WindVane.call('wv', 'getSetting', {}, function(res) {
if (!res.authSetting['location']) {
window.WindVane.call('wv', 'authorize', {scope: 'location'}, function(res) {
if (res.successScope['location']) {
alert('otorisasi lokasi berhasil');
//panggil jsapi yang ingin digunakan
}
}, function(e) {
alert('kegagalan:' + JSON.stringify(e));
})
} else {
alert('otorisasi lokasi berhasil');
}
}, function(e) {
alert('kegagalan:' + JSON.stringify(e));
});