作者:中国地产人 | 来源:互联网 | 2023-05-20 14:56
我正在使用MediaPicker
from 捕获视频xamarin.labs
,然后在我的Web服务器上上传该视频.之后,我检索该视频以在WebView中显示HTML5视频标签.
这适用于iOS.但是相同的代码在Android上不起作用.
我在android中创建自定义渲染器来创建,Webchromeclient
但它不在Android上播放视频.
带视频的示例html5(我也尝试使用tag中的type
参数
:
这是我的PCL项目中的Web视图部分:
public class MyWebView: WebView
{
}
这是我的页面:
public class VideoPage: ContentPage
{
public VidoePage()
{
var webView = new MyWebView();
webView.Source = new HtmlSource {Html = abovementionedHtml};
var layout = new StackLayout()
{
Childern = {webWiew}
};
this.COntent= layout;
}
Android渲染器:
[assembly: ExportRenderer(typeof(MyWebView), typeof(MyWebViewRenderer))]
namespace VideoSample.Droid
{
using Xamarin.Forms.Platform.Android;
public class MyWebViewRenderer : WebRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs e)
{
base.OnElementChanged(e);
if (this.COntrol== null)
{
var webView = new global::Android.Webkit.WebView(this.Context);
webView.SetWebChromeClient(new WebChromeClient());
webView.Settings.JavascriptEnabled = true;
webView.Settings.SetPluginState(WebSettings.PluginState.On);
this.SetNativeControl(webView);
}
}
}
}
所以有人能告诉我什么是错的吗?
提前致谢.