2012-01-05 122 views
0

我开发了一个包含所有htmls标签的html5页面。我将该文件推入到android模拟器/设备中。当我尝试启动该网页是能够查看图像和所有,但无法播放音频..有任何其他reason.please帮助我尽快..无法在Android模拟器中使用html5音频标签播放音频

林能够播放音频达IM的桌面浏览器。

+0

只是检查了这一点.... http://stackoverflow.com/questions/3369068/android-play-sound-on-button-click-null-pointer-exception – 2012-11-09 06:19:53

回答

0

Android(WebKit)2.2默认浏览器在技术上支持HTML5音频,但无法播放任何使用流行编解码器编码的媒体文件。由于浏览器供应商对HTML5音频标签的不一致实施,您需要使用JavaScript来准确判断您是否可以使用原生音频或后备。

0

这只是实现目标的机器人从Android中的HTML文件播放音频的方式。因为android 2.2不支持HTML5的音频标签。

使用Android的Mediaplayer(http://developer.android.com/reference/android/media/MediaPlayer.html)播放音频。你可以调用JavaScript中的Android,你已经写在HTML文件的功能..

这是例子,你可以调用如何从JavaScript代码 用Java编写的文件中的函数(insted的ShowAndroidToast功能,您可以编写代码来打使用mediaplayer对象的音频。)

WebView webView = (WebView) findViewById(R.id.webview); 
    webView.addJavascriptInterface(new WebAppInterface(this), "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(); 
     } 
    } 

    --------------------------- 
    java sript code 

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

    <script type="text/javascript"> 
     function showAndroidToast(toast) { 
      Android.showToast(toast); 
     } 
    </script> 

这样你就可以从Android代码中调用音频。