我正在查看来自xamarin
培训here的代码here,当我查看代码时(为了我自己的教育目的),我注意到了这一行(第42行
public async virtual Task Sync()
{
var connected = await Plugin.Connectivity.CrossConnectivity.Current.IsReachable("google.com");
if (connected == false)
return;
我可能是错的......但对我而言,它似乎是测试连接性的唯一目的。有没有比硬编码google.com
更好的方法来查看是否存在连接?是否有人可以测试的标志?如果google
失效怎么办(忽略时空连续体中的撕裂)?
答案 0 :(得分:3)
如果您正在测试连接性,以便可以测试Azure移动应用程序是否已启动,请将google.com替换为该服务的URL。似乎真的希望你想要进行测试。
答案 1 :(得分:2)
这并不罕见。例如,iOS和Mac会在加入Wi-Fi网络时代表用户与http://www.apple.com/library/test/success.html
或http://captive.apple.com/hotspot-detect.html
或其他某些网址建立连接,以查看网络是否具有互联网连接并检测网络俘虏门户网站。微软和Android设备做类似的事情,只是使用不同的已知URL。
最好尝试连接到您控制的服务,因为一般情况下如果您的应用无法与yourapp.com建立连接,那么最好是确保你可以连接到yourapp.com。
进行测试以确定google.com是否可用是一个合理的后备,以确定该设备是否具有“连接性”。