0

静的情報を表示するため、新しいAndroidアプリを作成しました。html5作成し、 html5ファイルをwebview呼び出しました。日時 問題は、このmp3を再生するためにこのチェックボックスの値がオンになっているかどうかを確認する方法です? .

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_ramadan);

    //Call HTML Files
    WebView myWebView = (WebView) findViewById(R.id.web_engine);

    WebSettings webSettings = myWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    myWebView.loadUrl("file:///android_asset/index.html");


}

public void audioPlayer() {
        //set up MediaPlayer    
        MediaPlayer mp = new MediaPlayer();

        try {
            AssetFileDescriptor descriptor = getAssets().openFd("Azan.mp3");
            mp.setDataSource(descriptor.getFileDescriptor(), descriptor.getStartOffset(), descriptor.getLength());
            descriptor.close();
            mp.prepare();
            mp.start();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

 <div class="switch demo3">
        <input type="checkbox" >
        <label><i></i></label>
      </div>
4

1 に答える 1

0

を介して、JavaScript とアプリケーション間の通信に Java スクリプト インターフェイスを実装するだけで可能WebView.addJavascriptInterface()です。

参照: JavaScript コードを Android コードにバインドする

たとえば、Android アプリケーションに次のクラスを含めることができます。

public class WebAppInterface {
    Context mContext;

    /** Instantiate the interface and set the context */
    WebAppInterface(Context c) {
        mContext = c;
    }

    /** Show a toast from the web page */
    @JavascriptInterface
    public void showToast(String toast) {
        Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
    }
}

次に、あなたの活動で

WebView webView = (WebView) findViewById(R.id.webview);
webView.addJavascriptInterface(new WebAppInterface(this), "Android");

今htmlで

<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />

<script type="text/javascript">
    function showAndroidToast(toast) {
        Android.showToast(toast);
    }
</script>
于 2013-06-21T09:22:29.407 に答える