Alier.registerFunction()
JavaScript の関数をネイティブ側のコードから実行できるようにします。
この関数は非同期関数です。
構文
Alier.registerFunction(func) => Promise<void>
引数
-
func:function登録する関数オブジェクトです。
返値: Promise<void>
登録完了時に履行されるプロミスです。
例外
TypeError- 引数
funcが関数でない場合。
- 引数
例
関数登録
function add (x, y) {
return x + y;
}; // 関数の定義
Alier.registerFunction(add); // 関数の登録
ネイティブコードから呼び出し
mainActivity.scriptMediator!!.callJavaScriptFunction(
functionName = "add",
args = arrayOf(1, 2)
) { result ->
/* 実行結果の処理 */
}
try! mainActivity.scriptMediator.callJavaScriptFunction(
functionName: "add",
args : [1, 2]
) { result in
/* 実行結果の処理 */
}
解説
登録された関数はネイティブ側の ScriptMediator: callJavaScriptFunction() から関数名を指定して呼び出すことができます。