by spoorti » Mon Oct 05, 2009 5:27 am
Hi,
I am trying to play audio and vedio through webkit.. But its not showing up in the browser. I have written the HTML code in assets folder. I will give the entire code here.. My guess is that the plugin for Android Browser for playing media is missing. Please help me how to overcome this.
Please Reply me as soon as possible
Assets Folder
<html>
<body>
<h1>hello</h1>
<object width="300" height="42">
<param name="src" value="New.mp3">
<param name="autoplay" value="true">
<param name="controller" value="true">
<param name="bgcolor" value="#FF9900">
<embed src="New.mp3" width="300" height="42">
</body>
</html>
New.mp3 is also in assets folder
java code
package com.hello;
import android.app.Activity;
import android.os.Bundle;
import android.os.Debug;
import android.os.Handler;
import android.util.Log;
import android.webkit.JsResult;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class HelloWebActivity extends Activity {
private static final String LOG_TAG = "WebViewDemo";
WebView webview;
private Handler mHandler = new Handler();
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
webview = (WebView) findViewById(R.id.webview);
/* webview.getSettings().setJavaScriptEnabled(true);*/
WebSettings webSettings = webview.getSettings();
webSettings.setSavePassword(false);
webSettings.setSaveFormData(false);
webSettings.setJavaScriptEnabled(true);
webSettings.setSupportZoom(false);
webview.setWebChromeClient(new MyWebChromeClient());
webview.addJavascriptInterface(new DemoJavaScriptInterface(), "demo");
Debug.startMethodTracing("webview");
webview.loadUrl("file:///android_asset/simple.html");
Debug.stopMethodTracing();
/*webview.loadData("<html><body>Hi dude<br><br>Hi again</body></html>", "text/html", "UTF-8");*/
/* webview.loadUrl("file:///android_asset/simple.html");*/
}
final class DemoJavaScriptInterface {
DemoJavaScriptInterface() {
}
/**
* This is not called on the UI thread. Post a runnable to invoke
* loadUrl on the UI thread.
*/
public void clickOnAndroid() {
mHandler.post(new Runnable() {
public void run() {
webview.loadUrl("javascript:wave()");
}
});
}
}
/**
* Provides a hook for calling "alert" from javascript. Useful for
* debugging your javascript.
*/
final class MyWebChromeClient extends WebChromeClient {
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
Log.d(LOG_TAG, message);
result.confirm();
return true;
}
}
}
Please help me out in this... If you know other way of playing audeo/vedio through webkit also let me know
Thanks,
Spoorti