Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android youtube视频无法在Webview中工作,anyDensity设置为false_Android - Fatal编程技术网

Android youtube视频无法在Webview中工作,anyDensity设置为false

Android youtube视频无法在Webview中工作,anyDensity设置为false,android,Android,在jelly beans安卓设备(我相信也是ICS)上,安卓网络视图框架内的youtube视频数周前在我们的应用程序中停止工作:没有视频(黑屏),但可以听到声音和看到视频控制。 我终于找到了一条线索,知道是什么阻碍了他们的工作。 似乎需要在清单中设置以下内容才能使视频正常工作: android:targetSdkVersion="8" android:hardwareAccelerated="true" supports-screens android:anyDensity="false" 另

在jelly beans安卓设备(我相信也是ICS)上,安卓网络视图框架内的youtube视频数周前在我们的应用程序中停止工作:没有视频(黑屏),但可以听到声音和看到视频控制。 我终于找到了一条线索,知道是什么阻碍了他们的工作。 似乎需要在清单中设置以下内容才能使视频正常工作:

android:targetSdkVersion="8"
android:hardwareAccelerated="true"
supports-screens android:anyDensity="false"
另一方面,在我们点击全屏youtube按钮后,视频工作正常(但我不想使用全屏)

1) 2)对我们来说不是问题,我们可以在清单中设置它们(但我想知道为什么需要硬件加速)。 但是3)我们不能(出于不同的原因)

有人知道为什么anyDensity设置为假中断视频,以及是否有任何解决方法吗

有关复制问题的apk的一些信息:
apk是用android 3.0构建的
清单的关键摘录:

<uses-sdk android:minSdkVersion="1" android:targetSdkVersion="8"/>
<!-- android:hardwareAccelerated="true" -->
<application android:icon="@drawable/icon" android:label="@string/app_name" android:hardwareAccelerated="true">
    <activity android:name=".TestHTML5WebView"
              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>

<supports-screens android:anyDensity="false"/>

...

(只需确保使用本文顶部的值更新manifest.xml,targetSdkVersion,hardwareAccelerated,android:anyDensity)

谢谢


Laurent

对于嵌入式视频,应用程序需要surfacetexture类。这要求将android:hardwareAccelerated=“true”设置为true。 根据,android:anyDensity=“false”不应设置为false。
全屏视频使用surfaceview,surfaceview对硬件加速没有要求。

Youtube最近发布的android播放器:


感谢您对硬件加速的解释。但不幸的是,我在这个应用程序中需要android:anyDensity=“false”,短期内无法改变这一点。知道为什么视频不能与anyDensity=“false”配合使用吗?
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, target-densityDpi=device-dpi"/>


<script type="text/javascript" charset="utf-8">
            window.onerror = function(errorMsg) {
                    try {
                            alert(errorMsg);
                    }
                    catch(err) {
                            alert('An expected error occurred. please try again later!');
                    }
            }
</script>

<style type="text/css" media="screen">
            body {
                    background: #000;
                    margin: 0;
                    padding: 0;
            }

            .video1 {
                    width: 90%;
                    height: 90%;
                    margin: 0 auto;
            }
</style>
</head>
<body>
    <div class="video1">
            <iframe width="560" height="315" src="http://www.youtube.com/embed/hH9Kx06oO_0" frameborder="0" allowfullscreen></iframe>
    </div>
</body>
</html>