我在Xamarin
工作。现在我想在Xamarin.iOS
中获取当前的网络类型,例如4G,3G,wifi
...
我是Xamarin
的新朋友。任何建议都会有用
答案 0 :(得分:2)
要建立连接的网络类型,请使用CTTelephonyNetworkInfo
这样的类
var telephonyInfo = new CTTelephonyNetworkInfo();
var networkType = telephonyInfo.CurrentRadioAccessTechnology;
您将定义的可能值如下:CTRadioAccessTechnologyGPRS
,CTRadioAccessTechnologyEdge
,CTRadioAccessTechnologyWCDMA
,CTRadioAccessTechnologyLTE
等
答案 1 :(得分:1)
您可以获取来自iOS示例的Reachability
类https://github.com/xamarin/ios-samples/blob/master/ReachabilitySample/reachability.cs
然后您可以通过以下方式获取连接状态:
var internetStatus = Reachability.InternetConnectionStatus();
switch(internetStatus)
{
case NetworkStatus.ReachableViaCarrierDataNetwork:
// do something on cellular network
break;
case NetworkStatus.ReachableViaWiFiNetwork:
// do something on wifi network
break;
}
您可以通过以下方式获得有关更改的通知:
Reachability.ReachabilityChanged += OnReachabilityChanged;
private void OnReachabilityChanged(object sender, EventArgs args)
{
internetStatus = Reachability.InternetConnectionStatus();
}