0

我正在尝试从 webview 打开此链接http://www.broken-links.com/tests/video/但完全没有运气。实际上它适用于我手机上的网络浏览器(android 2.3),可以播放视频。但如果我使用 webview 在我的测试应用程序上尝试它不起作用,网站已加载但视频不可用。

并不是 webview 不支持 video 标签,因为 web 浏览器可以完美运行,但我不知道我哪里出错了。

请帮忙。谢谢你!

我的简单代码是

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    String fileUrl="http://www.broken-links.com/tests/video/";

    WebView wv=(WebView)findViewById(R.id.webView1);
    WebSettings settings=wv.getSettings();
    settings.setAllowFileAccess(true);
    settings.setLoadWithOverviewMode(true);
    settings.setUseWideViewPort(true);
    settings.setBuiltInZoomControls(true);
    settings.setJavaScriptEnabled(true);
    settings.setPluginsEnabled(true);

    wv.setWebChromeClient(new WebChromeClient(){
        @Override
        public boolean onConsoleMessage(
                ConsoleMessage consoleMessage) {
            Log.e("viewengine.createWebView()",
                    consoleMessage.toString());
            return true;
        }
    });

    wv.setWebViewClient(new WebViewClient(){
        @Override
        public boolean shouldOverrideUrlLoading(
                        WebView view,String url) {

            return true;
        }
    });

    wv.setHorizontalScrollBarEnabled(false);
    wv.setVerticalScrollBarEnabled(false);

    wv.loadUrl(fileUrl);
}
}

和清单

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.nsoft.test18"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.nsoft.test18.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

和布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true" />

</RelativeLayout>
4

1 回答 1

0

在清单文件中添加这一行

  android:hardwareAccelerated="true"

编辑:这个对我有用

   <application android:icon="@drawable/icon" 
            android:label="@string/app_name" 
            android:hardwareAccelerated="true" 
            android:allowBackup="true"
            android:configChanges="orientation">

你可以参考这个: https ://stackoverflow.com/a/17273141/2210514

于 2013-06-25T12:37:43.650 回答