rda.SocketsForPCL 2.0.2

Cross-platform socket API for Xamarin iOS/Android/Forms, Xamarin.Mac, 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.

Requires NuGet 2.8.1 or higher.

Install-Package rda.SocketsForPCL -Version 2.0.2
dotnet add package rda.SocketsForPCL --version 2.0.2
<PackageReference Include="rda.SocketsForPCL" Version="2.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add rda.SocketsForPCL --version 2.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

2.0.2 (2016-08-22)


- 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


- Support for the iOS "Classic" API, MacOS "Classic" and MonoMac (open source) platforms has been dropped.

Known Issues:

- A `SocketException` class has been added, allowing socket-related exceptions to be caught from PCL code. In this release, this works for WinRT/UWP platforms only.


- sockets-for-pcl can now also be installed via the Xamarin Component Store. Thanks @mattleibow
- special thanks to @vbisbest for helping work through issues in the prereleases


This package has no dependencies.

NuGet packages (16)

Showing the top 5 NuGet packages that depend on rda.SocketsForPCL:

Package Downloads
Useful extensions/tools/utils I keep using all over the place. Hit me up (@bscheiman) if you need help.
Supports the DeviceDrive SDKs for iOS/Android in Xamarin
Cross-platform Quciblox Sdk for Xamarin iOS/Android/Forms, Xamarin.Mac/MonoMac, Windows Phone 8/8.1, Windows Store and Windows Desktop.
An object graph mapping library for .Net
PCL Profile259 Websocket client. Perfect for Xamarin Forms Portable Class Library applications. Utilize's sockets-for-pcl.

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on rda.SocketsForPCL:

Repository Stars
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.

Version History

Version Downloads Last updated
2.0.2 107,604 8/22/2016
2.0.1-pre 718 6/6/2016
2.0.0-pre2 851 1/15/2016
2.0.0-pre1 542 1/15/2016
1.2.2 122,012 7/27/2015
1.2.1 1,239 6/10/2015
1.2.0 1,011 5/19/2015
1.1.8 2,500 4/20/2015
1.1.7 700 4/12/2015
1.1.6 629 4/12/2015
1.1.5 2,214 3/11/2015
1.1.4 1,434 2/9/2015
1.1.4-pre 580 2/8/2015
1.1.3 646 2/6/2015
1.1.2 561 2/6/2015
1.1.1 798 1/29/2015
1.1.0 663 1/27/2015 864 1/4/2015
1.0.0 1,142 1/3/2015