Android Web视图调用和单击元素

时间:2014-12-06 10:43:35

标签: java javascript android html webview

我正在使用移动应用,该应用使用jplayer从某个网站播放音乐,并从一首歌改为另一首,没有用户互动,我的第一个建立使用phonegap的应用程序失败,因为由于带宽问题,HTML5媒体标签不允许在移动设备上自动启动,用户必须单击某个按钮才能播放媒体,所以我正在尝试一些新功能,如下所示,

     
  1. 使用 webView
  2. 创建原生Android应用  
  3. 将webview网址的网址设置为资产文件夹
  4. 中的文件  
  5. 加载页面并准备播放媒体后,以编程方式单击使用java在webview中的播放按钮,以便它可以开始播放

我已将webview中的播放按钮的ID设为playbtn

我的java代码

我创建了一个按钮,以便执行playbtn的点击事件。

    final WebView wv;  
    Button playbtn;
    wv = (WebView) findViewById(R.id.webView1);
    playbtn = (Button) findViewById(R.id.button1);


    wv.clearCache(true);
    wv.clearHistory();
    wv.getSettings().setJavaScriptEnabled(true);
    wv.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
    wv.loadUrl("file:///android_asset/index.html"); 
    playbtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Toast.makeText(getBaseContext(), "test", Toast.LENGTH_SHORT).show();
            // the toast shows up
            wv.loadUrl("javascript:(function(){"+
                    "l=document.getElementById('playbtn');"+
                    "e=document.createEvent('HTMLEvents');"+
                    "e.initEvent('click',true,true);"+
                    "l.dispatchEvent(e);"+
                    "})()");
          //nothing happens here
        }
    });

我不会使用JavaScript界面​​,因为没有用户交互,有没有办法以编程方式完成playbtn点击?

更新

播放开始后,点击按钮即可恢复音乐。

0 个答案:

没有答案