Xamarin.iOS Ping导致System.InvalidOperationException

时间:2017-09-28 08:19:46

标签: c# ios xamarin xamarin.ios ping

在我的代码中,我正在尝试执行以下操作:

Ping ping = new Ping();
var reply = ping.Send(ipAddress);

但是这总是抛出System.InvalidOperationException:

  

“由于对象的当前状态,操作无效。”

我在iOS9.1设备上运行它。

1 个答案:

答案 0 :(得分:2)

您不想使用Mono Ping例程,因为它无法在iOS上运行。 Xamarin已将Apple的SimplePing示例代码包装到一个包/ nuget(Xamarin.SimplePing)中。

var pinger = new SimplePing("www.apple.com");

pinger.Started += (sender, e) => {
    var endpoint = e.EndPoint;
    pinger.SendPing(null);
};

pinger.ResponseRecieved += (sender, e) => {
    var seq = e.SequenceNumber;
    var packet = e.Packet;
};

pinger.Start();

回复:https://github.com/xamarin/XamarinComponents/tree/master/iOS/SimplePing

回复:https://developer.apple.com/library/content/samplecode/SimplePing