Play SWF file in webViewClient on ICS?
android, android-4.0-ice-cream-sandwich, flash
Solution
according to this Question, i used to load the swf file instead of loading a html.
its work like a charm.
- Add to AndroidManifest.xml
android:hardwareAccelerated="true"
2.
oWebView = (WebView) findViewById(R.id.wvhPlayer);
oWebView.getSettings().setJavaScriptEnabled(true);
oWebView.getSettings().setPluginState(WebSettings.PluginState.ON);
oWebView.loadUrl("http://mysite.com/sites/all/modules/player/player.swf?id=0CYj9tI0hpQ");
Problem
I tried to open an SWF file in webViewClient and it works on Android 2.1 and 2.3.3. But when I try to play the same SWF file on 4.0.4, it causes an error and a green screen appears in the videoPlayer page. ``` oWebView = (WebView) findViewById(R.id.wvhPlayer); oWebView.setWebViewClient(new KhWebClient()); oWebView.getSettings().setJavaScriptEnabled(true); oWebView.getSettings().setPluginsEnabled(true); oWebView.getSettings().setAllowFileAccess(true); oWebView.getSettings().setBuiltInZoomControls(true); String html = " <object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"100%\" height=\"100%\" id=\"vPlayer\" align=\"middle\">" + " <param name=\"movie\" value=\"http://mysite.com/sites/all/modules/player/player.swf?id=0CYj9tI0hpQ" + "\" />" + " <param name=\"quality\" value=\"high\" />" + " <param name=\"bgcolor\" value=\"#000000\" />" + " <param name=\"play\" value=\"true\" />" + " <param name=\"loop\" value=\"true\" />" + " <param name=\"wmode\" value=\"window\" />" + " <param name=\"scale\" value=\"showall\" />" + " <param name=\"menu\" value=\"true\" />" + " <param name=\"devicefont\" value=\"false\" />" + " </object>"; oWebView.loadDataWithBaseURL("null", html, "text/html", "utf-8", null); ```