相关疑难解决方法(0)

WebView和HTML5 <video>

我正在拼凑一个廉价的应用程序,其中包括"框架"我们的一些网站...非常简单的WebViewClient.直到我点击视频.

该视频是作为HTML5 元素完成的,这些在Chrome,iPhone上工作得很好,现在我们修复了它Android在本机浏览器中运行良好的编码问题.

摩擦:WebView不喜欢它.完全没有.我可以点击海报图片,没有任何反应.

谷歌搜索,我发现是接近,但似乎是基于'链接'(如在href ...)而不是视频元素.(onDownloadListener似乎没有在视频元素上调用...)

我也看到覆盖onShowCustomView的引用,但似乎没有在视频元素上调用...还没有shouldOverrideUrlLoading ..

我宁愿不进入"从服务器拉xml,在应用程序中重新格式化"......通过在服务器上保留故事布局,我可以更好地控制内容而不强迫人们不断更新应用程序.因此,如果我可以说服WebView处理像本机浏览器这样的标签,那将是最好的.

我显然错过了一些明显的东西..但我不知道是什么.

video html5 android webview android-webview

122
推荐指数
5
解决办法
14万
查看次数

Android Webview应用程序不会让视频播放器全屏显示

嗨,我为我的视频网站创建了一个webview应用程序.该网站的设计是为移动用户加载的混合设备.只有与移动设备兼容的视频才会加载到混合动力车上.球员来自Vk,dailymotion,youtube,quicktime.这些视频只能在sdk 11及更高版本上播放,但是当我点击播放器按钮进入全屏时,它只会停止播放视频,而不会启动进入全屏模式.我尽可能多地包含代码,希望有人可以帮助我.我没有取得任何进展,我用Google搜索了它.任何帮助将不胜感激.

(Webviewactivity.java)

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().requestFeature(Window.FEATURE_PROGRESS);
    setContentView(R.layout.main);

    parentView = (RelativeLayout) findViewById(R.id.parent_rl);

    webviewProgress = (ProgressBar) findViewById(R.id.webview_progress);

    webview = (WebView) findViewById(R.id.webview);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.getSettings().setBuiltInZoomControls(true);
    webview.getSettings().setAllowFileAccess(true);
    webview.setWebViewClient(new MyWebViewClient());
    webview.getSettings().setPluginState(WebSettings.PluginState.ON);
    webview.loadUrl(URL);
    webviewProgress.setProgress(0);

    webview.setWebChromeClient(new MyWebChromeClient());
    webview.setDownloadListener(new DownloadListener() {
        public void onDownloadStart(String url, String userAgent,
                String contentDisposition, String mimetype,
                long contentLength) {
            mProgressDialog = new ProgressDialog(WebViewActivity.this);
            mProgressDialog.setMessage("Downloading...");
            mProgressDialog.setIndeterminate(false);
            mProgressDialog.setMax(100);
            mProgressDialog
                    .setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            DownloadFile downloadFile = new DownloadFile();
            downloadFile.execute(url);
        }
    });

    initSlider();

    initAdmob();
}

/**
 * When when file was chosen
 */
@Override
protected void …
Run Code Online (Sandbox Code Playgroud)

eclipse android webview video-player

20
推荐指数
1
解决办法
4万
查看次数

在YouTube视频api中使用WebView和浏览器有什么不同?

我已经实现了youtube api,它在常规计算机浏览器中按预期工作.当我在冰淇淋三明治和姜饼中进行测试时,在库存浏览器(也就是Webkit)上,它的工作方式与我的计算机完全相同.

但是,当我将它加载到WebView时,它会遇到一些非常奇怪的行为.具体来说,它加载所有播放器控件(播放按钮,进度条等)并触发所有正常事件以进行缓冲和播放,但随后不是播放,它只是跳到最后并显示标准的YouTube后播放图标其他视频.如果我点击其中一个图标,它会跳过该视频并直接跳到该视频的末尾.

我将setJavascriptEnabled和setPluginsEnabled都设置为true.我假设我遗漏了一些东西,因为它在股票浏览器中都运行良好,但我很难过它是什么.有没有人在WebView中实现了YouTube视频播放器(或JWPlayer,或者我可以播放youtube视频的任何内容)?如果是这样,请分享您如何设法让它发挥作用.

TIA

[编辑]自发布此消息后,我实施了一个直接从YouTube检索视频流的原生播放器.这是令人难以置信的笨重,因为设备之间的碎片与他们可以/不能播放的文件有关*真的很大,而且由于没有办法让YouTube传递设备模型并让它返回相关的流,所以会发生什么流然后必须从数组中选择.无论如何...重点是这只是一个可怕的方法,我真的很想找出好的'嵌入式播放器解决方案,因为它必须工作,因为它在股票浏览器中工作.这可能是标题问题吗?

youtube android webview

18
推荐指数
1
解决办法
3751
查看次数

android webview是否支持html5视频播放?

可能重复:
WebView和HTML5 <video>

嗨任何人都可以告诉我android webview是否支持html5视频播放?如果是,你能告诉我怎么样?

android

6
推荐指数
1
解决办法
2万
查看次数

WebView无法打开Android默认视频播放器?

当我在我的Android设备的默认网络浏览器上查看此页面并单击第一个视频时,它会触发我设备的默认视频播放器.它加载和播放.

但是,当我使用WebView在我的应用程序中查看相同的链接时,它不会打开默认的视频播放器.可能是什么问题呢?

我正在使用此链接中的webview代码.

我也像在文档中所说的那样在全屏模式下制作webview ,使用此代码全屏:

requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
Run Code Online (Sandbox Code Playgroud)

编辑:我现在使用以下代码,但仍然没有工作,任何想法?

package com.example.Playmp4OnWebView;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class PlayMp4OnWebView extends Activity {
     /** Called when the activity is first created. */
     @Override
     public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);

          requestWindowFeature(Window.FEATURE_NO_TITLE);
          getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

          WebView webview = new WebView(this);
          setContentView(webview);

          WebSettings webSettings = webview.getSettings();
          webSettings.setJavaScriptEnabled(true);
          webSettings.setSupportZoom(false);
          webSettings.setPluginsEnabled(true);
          webSettings.setAllowFileAccess(true);

          webview.setWebViewClient(new WebViewClient(){

              public boolean shouldOverrideUrlLoading(WebView view, String …
Run Code Online (Sandbox Code Playgroud)

java android webview

5
推荐指数
1
解决办法
1万
查看次数

视频无法在 Android webview 上播放

我正在使用 Android 和 PhoneGap 应用程序,并使用 HTML5 视频标签在我的网页上播放视频。当我播放视频时,视频不可见并且视频不会自行播放。如何在 Android 上播放 HTML5 视频?

下面给出相同的代码

<!DOCTYPE HTML>
<html>
    <head>
    <script type="text/javascript" charset="utf-8" src="cordova-1.8.1.js"></script>
        <meta http-equiv="content-type" content="text/html; charset=">
        <title></title>
    </head>
    <body >


        <video id="video" autobuffer height="240" width="360" onclick="this.play();>
<source src="test.mp4">
<source src="test.mp4" type="video/webm">
<source src="test.mp4" type="video/ogg">
</video>

        <div id="msg"></div>

<script type="text/javascript">

</script>

    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

和活动类的onCreate方法-->>

public void onCreate(Bundle savedInstanceState) {            
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final WebView webView = (WebView) findViewById(R.id.webview);
        WebSettings webSettings = webView.getSettings();
        webSettings.setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS); 

        webView.getSettings().setJavaScriptEnabled(true);

        webSettings.setBuiltInZoomControls(true);
        webSettings.setPluginState(PluginState.ON);

        webView.getSettings().setPluginsEnabled(true);
        webSettings.setAllowFileAccess(true);

        webView.loadUrl("file:///android_asset/www/html5videoEvents.html");      
}
Run Code Online (Sandbox Code Playgroud)

html video android

5
推荐指数
1
解决办法
1万
查看次数