現在のミニアプリがデバイス関連の JavaScript API(対応するインターフェイスについては、以下の範囲リストを参照)を呼び出す前に、ユーザーから事前に権限をリクエストする必要があります。API が呼び出されると、ポップアップウィンドウがすぐに表示され、ミニアプリが特定の関数を使用したり、ユーザーのデータの一部を取得したりすることを承認するかどうかをユーザーに確認しますが、対応する JavaScript API は実際には呼び出されません。ユーザーが以前に承認に同意している場合、ポップアップは表示されず、呼び出しはすぐに成功を返します。以下
リクエストパラメーター
パラメーター | タイプ | 必須 | 説明 |
scope | String | はい | 取得するユーザーデバイスの権限付与範囲。 |
success | Function | いいえ | 承認が成功した場合のコールバック関数。 |
fail | Function | いいえ | 承認が失敗した場合のコールバック関数。 |
scope
scope | 説明 | 対応するインターフェイス |
location | 地理的な位置情報 | |
camera | カメラ | |
bluetooth | Bluetooth | WVBluetooth のすべてのメソッド |
album | アルバム | |
contacts | 連絡先 | WVContacts のすべてのメソッド |
microphone | マイク | |
file | ファイル | WVFile すべてのメソッド |
call | 通話 | |
vibrate | バイブレーション | |
screen | 画面 |
レスポンスパラメーター
呼び出しが成功した場合のコールバック関数は、オブジェクトを受け取ります。次の表は、オブジェクトの属性について説明しています。
属性 | タイプ | 説明 |
successScopes | JSONObject | ミニアプリに付与される ユーザー デバイス 承認範囲。 |
msg | String | エラーメッセージ |
呼び出しが失敗した場合のコールバック関数は、オブジェクトを受け取ります。次の表は、オブジェクト内のエラーメッセージ、エラーの説明、および対応する解決策について説明しています。
エラーメッセージ | エラーの説明 | 解決策 |
権限付与を申請するには、権限付与スイッチを設定する必要があります | 権限付与スイッチをオンにする必要があります | 権限付与スイッチが開いているかどうかを確認します |
パラメーター解析例外 | データ解析例外 | データ形式を確認してください。 |
権限付与範囲を空にすることはできません | 範囲が null です | 範囲を確認してください。 |
ユーザーがバインドされていません | コンテナーにユーザー ID の登録が必要です | コンテナーの登録ユーザー情報を確認してください。 |
ユーザーが権限付与リクエストを拒否しました | ユーザーが権限付与を拒否しました | 権限付与を取得するために、関数の目的を詳しく説明することができます。 |
リクエストした権限付与が存在しません。パラメーターを確認してください | 範囲が範囲内にありません | 範囲に無効な値が含まれています。 scope パラメーターを確認してください。 |
サンプルコード
window.WindVane.call('wv', 'getSetting', {}, function(res) {
if (!res.authSetting['location']) {
window.WindVane.call('wv', 'authorize', {scopes: 'location'}, function(res) {
if (res.successScopes['location']) {
alert('success authorize location');
//call the jsapi you need to use
}
}, function(e) {
alert('failure:' + JSON.stringify(e));
})
} else {
alert('success authorize location');
}
}, function(e) {
alert('failure:' + JSON.stringify(e));
});