我创建了新的 Android 应用,因为它显示了静态信息,我创建了html5,我将 html5 文件调用到我的 webview 其中一个html文件功能是点击按钮时播放mp3我在html和 android 之间做了我的界面,但 mp3 没有播放。
public class WebAppInterface extends Activity {
Context mContext;
/** Instantiate the interface and set the context */
WebAppInterface(Context c) {
mContext = c;
}
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();
}
}
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity);
//Call HTML Files
WebView myWebView = (WebView) findViewById(R.id.x);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.loadUrl("file:///android_asset/index.html");
//initiate interface
myWebView.addJavascriptInterface(new WebAppInterface(this), "Android");
}
<input type="button" value="play mp3" onClick="playmp3()" />
<script type="text/javascript">
function playmp3()
{
Android.audioPlayer();
}
</script>
答案 0 :(得分:0)
您可以Java
方式访问window.Android.audioPlayer();
方法。
只需在开头添加window