webviewに読み込まれたhtmlページのボタンをクリックしてアクティビティを開始したい。次のコードを使用して、htmlファイルを含むwebviewインスタンスをロードし、htmlページからjavascriptを使用してアクセスできるようにインターフェイスを作成してみました。
public void UpdateWebViewClientWithURL(String url)
{
WebView.enablePlatformNotifications();
WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSetings.setJavaScriptEnabled(true);
myWebView.addJavascriptInterface(new CommonLibrary(this.getApplicationContext()), "Android");
myWebView.loadUrl(url);
}
HTMLページのJavascriptは次のようになります
<script type="text/javascript">
function showAndroidToast() {
Android.launchActivity();
}
</script>
CommonLibraryクラスファイルに、新しいアクティビティをランチするための次の関数定義があります
public void launchActivity()
{
Intent myIntent = new Intent(mContext, testactivity.class);
mContext.startActivity(myIntent);
}
これらすべての設定で、ボタンをクリックするたびに表示されるので、アプリケーションがクラッシュします。私は方法があることを知っていますが、私はすべての可能な方法を検索しました、誰かがここで何が間違っているのか理解するのを手伝ってくれますか、または簡単な例でこれをどのように達成できますか?あなたの助けと時間を感謝します!