首页 > 解决方案 > xamarin android中的Webview html音频播放器

问题描述

在此处输入图像描述

如何在 webview 中获取此音频播放器,如果我们在 chrome 或任何浏览器中播放音频链接,默认情况下会提供类似上述内容,我们可以在 android webview 中获得完全一样的内容吗?我试图获取 html 元素,但 UI 看起来很奇怪-

尝试1-

var iframeURL = string.Format("<video width=\"{0}\" height=\"{1}\" controls=\"\" autoplay=\"\" name=\"media\"><source src=\"{2}\" type=\"audio/mpeg\"></video>",
            width, height, embedUrl);
        string finalUrl = string.Format("<html><body>{0}</body></html>", iframeURL);

这个最终的网址是我的网络来源

尝试2-

var iframeURL = string.Format("<iframe style=\"position:fixed; top: 50%; left: 50%;" +
      " width:" + " {1}px; height: {2}px; margin-left: {3}px; margin-top: {4}px;\"" + " src =\"{0}\" frameborder=\"0\" " + "allow=\"accelerometer;" +
      " autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>",
            embedUrl, width, height, -width / 2, -height / 2);
        string finalUrl = string.Format("<html><body>{0}</body></html>", iframeURL);
        return finalUrl;

标签: androidxamarin

解决方案


应该这样做,

   var html = string.Format("<!DOCTYPE html><html><head><meta name=\"viewport\"
   content=\"width=device-width, initial-scale=1.0\"></head><body><audio controls
   autoplay name=\"media\"><source src=\"{0}\" type=\"audio/mpeg\"></audio> 
   </body></html>",embedUrl);
    webView.Source = new HtmlWebViewSource
    {
    Html = html,
    };

XAML:

<WebView x:Name="webView" VerticalOptions="FillAndExpand"
HorizontalOptions="FillAndExpand"></WebView>

结果:

真的


推荐阅读