このように Webview で JavaScript から Java を呼び出す方法はありますか
アンドロイドで?
addJavascriptInterface()
Java オブジェクトを WebView の JavaScript 環境に追加するために使用します。
browser.addJavascriptInterface(new Locater(), "locater");
JavaScript は、注入した架空のオブジェクトのメソッドを参照できます。
<script language="javascript">
function whereami() {
var location=JSON.parse(locater.getLocation());
document.getElementById("lat").innerHTML=location.lat;
document.getElementById("lon").innerHTML=location.lon;
}
</script>
これらのメソッドは、 で使用した Java オブジェクトに実装されていますaddJavascriptInterface()
。
以下は、これを示すこれらのコードのビットが抽出された完全なサンプル プロジェクトです。