我想在Xamarin中为Android和iOS打开一个网页。 代码不起作用。 任何人都可以帮我弄清楚什么是错的?
对于Android,单击按钮会浏览代码,但之后不会发生任何事情。 对于iOS,单击按钮会打开Safari页面,但无法打开页面,并显示消息“Safari无法打开页面,因为服务器停止响应”。
测试arg通过的是:“ http://www.google.com ”
谢谢。
码:
async Task ExecuteLaunchBrowserAsync(string arg) { if (IsBusy) return; try { await CrossShare.Current.OpenBrowser(arg, new BrowserOptions { ChromeShowTitle = true, ChromeToolbarColor = new ShareColor { A = 255, R = 100, G = 50, B = 255 }, UseSafariReaderMode = true, UseSafariWebViewController = true }); } catch { } }I would like to open a web page in Xamarin for both Android and iOS. The code doesn't work. Can anyone help me figure out what's wrong?
For Android, clicking the button goes through the code, but nothing happens afterwards. For iOS, clicking the button does open a Safari page, but it cannot open the page, and displays a message "Safari could not open the page because the server stopped responding."
The test arg passed is: "http://www.google.com"
Thanks.
Code:
async Task ExecuteLaunchBrowserAsync(string arg) { if (IsBusy) return; try { await CrossShare.Current.OpenBrowser(arg, new BrowserOptions { ChromeShowTitle = true, ChromeToolbarColor = new ShareColor { A = 255, R = 100, G = 50, B = 255 }, UseSafariReaderMode = true, UseSafariWebViewController = true }); } catch { } }最满意答案
您只需要使用吹码,它适用于Android和iOS。
void Device.OpenUri(Uri uri)例如。
Device.OpenUri(new Uri("http://example.com"))要在iOS中工作,请在Info.plist中使用传输安全性
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key><true/> </dict>http://i.imgur.com/qqP7KHp.gif
You just need to use blow code, it will work for both Android and iOS.
void Device.OpenUri(Uri uri)eg.
Device.OpenUri(new Uri("http://example.com"))To work in iOS use Transport security in Info.plist
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key><true/> </dict>http://i.imgur.com/qqP7KHp.gif
更多推荐
发布评论