このトピックでは、WindVane ミニアプリの JavaScript API を使用する場合の仕様と制限について説明します。
UA 仕様
WindVane は、WindVane タグ、WindVane SDK のバージョン、クライアントの追加 User-Agent(UA)、現在の画面の解像度をデフォルト UA の値に追加して、環境を判別できるようにします。
完全な UA には、デフォルト UA(アプリ名またはアプリバージョンを含む)、WindVane または WindVane SDK のバージョン、クライアントの追加 UA、解像度(WxH)が含まれます。各項目はスペースで区切られます。
Android UA の例:
Mozilla/5.0 (Linux; Android 10; TAS-AN00 Build/HUAWEITAS-AN00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/88.0.4324.93 Mobile Safari/537.36 TTID/aaa WindVane/8.5.0
iOS UA の例:
Mozilla\/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit\/605.1.15 (KHTML, like Gecko) Mobile\/19F70 AliApp(EMASDemo\/2.0.0) WindVane\/8.6.1 TBIOS 1170x2532
WindVane iOS では、setAppUA メソッドを使用して、クライアントの追加 UA を設定できます。UA に解像度を含める場合は、小文字の
x
を使用してください。WindVane Android では、クライアントの追加 UA を設定するメソッドは提供されていません。UA に解像度を含める場合は、大文字の
X
を使用してください。
クライアントの OS とバージョンを判断するために、クライアントの追加 UA を使用しないことをお勧めします。
JavaScript API 仕様
window.WindVane.call(className, methodName, params, successCallback, failureCallback, timeout)
を使用して、クライアントの機能を呼び出すことができます。
JavaScript API は、iframe 内では呼び出すことができません。
入力パラメーター
種類 | パラメーター | 説明 |
| className | 呼び出すクライアントクラスの名前。 |
| methodName | 呼び出すクライアントメソッドの名前。 |
| params | クライアントに渡すパラメーター。 |
| successCallback | JSBridge が呼び出された後に実行されるコールバック。 |
| failureCallback | JSBridge の呼び出しに失敗した後に実行されるコールバック。 |
| timeout | オプション。JSBridge の呼び出しがタイムアウトします。タイムアウトが発生した場合、 |
successCallback
と failureCallback
はどちらもネイティブ アプリによって呼び出されます。例外をキャッチするために
このトピックでは、呼び出す必要のあるクライアントクラス名とメソッドは、className.methodName
形式で指定されています。
コールバックパラメーター:クライアント API が呼び出されると、success
コールバックが実行されます。クライアント API の呼び出しに失敗すると、failure
コールバックが実行されます。コールバック関数のパラメーターは、呼び出される API によって異なります。
コールバックパラメーター内の ret:コールバックパラメーターには、ret
プロパティが含まれる場合があります。このプロパティは、コールバックのステータスを示します。次の表に、ret プロパティの有効な値を示します。
値 | 説明 |
| API 呼び出しが成功したことを示します。この値は、 |
| JSBridge 機能が無効になっていることを示します。ほとんどの場合、この問題は、ページの URL が信頼できるドメインのリストに指定されていないか、ネイティブアプリで JSBridge 機能が有効になっていないために発生します。この問題が発生した場合は、URL を確認するか、HTML5 コンテナーネイティブ開発者に連絡して問題を解決してください。 |
| 現在のクライアントがこの API を提供していないことを示します。呼び出された JSBridge が正しいかどうかを確認し、JSBridge のネイティブアプリのプロバイダーに連絡して問題を解決してください。 |
| 入力パラメーターが無効であることを示します。入力パラメーターが有効であることを確認してください。 |
| 現在のページにこの API を呼び出す権限がないことを示します。 |
| API 呼び出しが失敗したことを示します。JSBridge のネイティブアプリのプロバイダーに連絡して問題を解決してください。 |
| API の呼び出し時にエラーが発生したことを示します。JSBridge のネイティブアプリのプロバイダーに連絡して問題を解決してください。 |
| API に操作を実行する権限が付与されていないことを示します。たとえば、クライアントはこの API を呼び出してアルバムにアクセスしたいと考えていますが、クライアントはアルバムにアクセスできません。 |
| ユーザーが現在の API リクエストをキャンセルしたことを示します。 |
| ユーザーが WVCamera によって提供される API を使用して写真の撮影リクエストをキャンセルしたことを示します。 |
| JSBridge の呼び出しがタイムアウトしたことを示します。 |
| ネイティブアプリから HTML5 に渡されたデータの形式が無効であることを示します。 |
| 現在の環境がブラウザなどの WindVane ではないか、クライアントによって提供された WindVane の UserAgent が無効であることを示します。または、ページの JavaScript が windvane.js ファイルの環境変数を誤って変更した可能性があります。たとえば、 |
| JSBridge が、ブラウザなどのサポートされていないデバイスまたは環境で呼び出されたことを示します。または、ページの JavaScript アクションが windvane.js ファイルの環境変数を誤って変更した可能性があります。たとえば、 |
| JSBridge が Windows デバイスまたはブラウザなどのサポートされていない環境で呼び出されたことを示します。 |
| ネイティブアプリから HTML5 に渡されたデータの形式が無効であることを示します。 |
ret
プロパティの値は、呼び出される JavaScript API によって異なります。 ret プロパティの値は、空の文字列、文字列、または配列です。 ret[0]
には、クライアント API の実行状態が含まれています。すべての JavaScript API がコールバック関数を呼び出すことができるわけではありません。JavaScript API によるコールバック関数の呼び出しは、クライアントの実装に関連しています。JavaScript API ドキュメントでは、成功コールバックまたは失敗コールバックが発生する使用シナリオについて説明しています。