Cross-platform socket API for Xamarin iOS/Android/Forms, Xamarin.Mac/MonoMac, Windows Phone 8/8.1, Windows Store, UWP and Windows Desktop. Includes support for TCP and UDP listeners and clients, as well as UDP multicast.
See the version list below for details.
Requires NuGet 2.8.1 or higher.
Install-Package rda.SocketsForPCL -Version 2.0.0-pre2
dotnet add package rda.SocketsForPCL --version 2.0.0-pre2
<PackageReference Include="rda.SocketsForPCL" Version="2.0.0-pre2" />
paket add rda.SocketsForPCL --version 2.0.0-pre2
- A `SocketException` class has been added, allowing socket-related exceptions to be caught from PCL code. In this prerelease, this works for WinRT/UWP platforms only.
- Support for the iOS "Classic" API has been removed
- It is now possible to retrieve the `ICommsInterface` that a `TcpSocketClient` is connected via. Thanks @fubar-coder
- Auto-properties have been replaced with proper events across all classes. Thanks @Waty
- `TcpSocketClient`'s `ConnectAsync` method optionally takes a `CancellationToken` to support client-invoked cancellation and scenarios like timeout. Thanks @SparkStream
- You may now specify a service name rather than port when connecting with a `TcpSocketClient`. Thanks @SparkStream
- For those that need it, you can access the underlying .NET or WinRT/UWP socket instance from native (non-PCL) projects. Thanks @SparkStream
- `UdpSocketClient` can now receive response packets. This simplifies scenarios where you don't need to listen for new packets, but do need to receive response packets. Thanks @SatoshiARA
- All the Udp socket classes now include a `Send-` overload that allows you to specify the number of bytes to be read from the input. This can avoid the need to duplicate a buffer when working with streams. Thanks @jasells
- Fixed `InvalidCastException` being thrown by `TcpSocketListener.Dispose()`. Thanks @Waty
- Fix for a rare issue where the Udp classes could throw an exception after receiving an ICMP unreachable packet in certain cases
- sockets-for-pcl can now also be installed via the Xamarin Component Store. Thanks @mattleibow
This package has no dependencies.
Showing the top 2 GitHub repositories that depend on rda.SocketsForPCL:
Samples for the Urho bindings
Cross-platform socket API for Xamarin iOS/Android/Forms, Xamarin.Mac/MonoMac, Windows Phone 8/8.1, Windows Store and Windows Desktop.