VpnHood.Net.Quic.MsQuic.AndroidNative 8.0.14

There is a newer version of this package available.
See the version list below for details.
dotnet add package VpnHood.Net.Quic.MsQuic.AndroidNative --version 8.0.14
                    
NuGet\Install-Package VpnHood.Net.Quic.MsQuic.AndroidNative -Version 8.0.14
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="VpnHood.Net.Quic.MsQuic.AndroidNative" Version="8.0.14" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="VpnHood.Net.Quic.MsQuic.AndroidNative" Version="8.0.14" />
                    
Directory.Packages.props
<PackageReference Include="VpnHood.Net.Quic.MsQuic.AndroidNative" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add VpnHood.Net.Quic.MsQuic.AndroidNative --version 8.0.14
                    
#r "nuget: VpnHood.Net.Quic.MsQuic.AndroidNative, 8.0.14"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package VpnHood.Net.Quic.MsQuic.AndroidNative@8.0.14
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=VpnHood.Net.Quic.MsQuic.AndroidNative&version=8.0.14
                    
Install as a Cake Addin
#tool nuget:?package=VpnHood.Net.Quic.MsQuic.AndroidNative&version=8.0.14
                    
Install as a Cake Tool

VpnHood.Net.Quic.MsQuic.AndroidNative

A self-contained native QUIC package for Android: MsQuic, Microsoft's QUIC library, built from this fork with OpenSSL for TLS, for Android 7.0 (API 24) and later. It ships:

  1. The libmsquic.so per ABI (arm64-v8a, armeabi-v7a, x86_64) — built by CI and packed into the NuGet (it flows into the consuming APK as lib/<abi>/libmsquic.so). The .so is not committed; it's git-ignored (native/**/*.so) and produced fresh on each build.
  2. The Microsoft.Quic C# P/Invoke bindings — a committed, self-contained copy under Bindings/ with public types, picked up by the SDK's default .cs globbing.

It has no VpnHood dependencies. Its whole job is to hide the native-linking complexity behind one package reference.

Consuming it

Reference the package at the version you tested, as VpnHood.Net.Quic.Android does:

<PackageReference Include="VpnHood.Net.Quic.MsQuic.AndroidNative" Version="x.y.z" />

Every push to this repository's main publishes a new native build, so a floating version would take one nobody has run on a device.

A consumer gets both the bundled .so (transitively, into the APK) and the bindings. Because the binding types are public, consumers use them directly — no InternalsVisibleTo needed.

Publishing a new version

Push to main — GitHub Actions builds all ABIs, packs, and publishes 8.0.<run-number> to nuget.org (see android/README.md). No manual version bump and no local build needed.

For a local pack (rare): build the .so first with android/build-android.ps1; the RefreshMsQuicNative MSBuild target copies it into native/<abi>/ before packing. Without a freshly built .so the build fails on purpose — there is no committed binary to fall back on.

arm64-v8a, armeabi-v7a (32-bit ARM, needed for Android TV devices) and x86_64 are produced; x86 is intentionally excluded.

License

MsQuic and its C# bindings are Microsoft's, under the MIT license, and the native library links OpenSSL, under the Apache License 2.0. The package carries both texts in its licenses folder: LICENSE and THIRD-PARTY-NOTICES.

Product Compatible and additional computed target framework versions.
.NET net10.0-android36.1 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0-android36.1

    • No dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on VpnHood.Net.Quic.MsQuic.AndroidNative:

Package Downloads
VpnHood.Net.Quic.Android

Android implementation of the VpnHood QUIC abstractions (IQuicClient/IQuicConnection/Stream) over MsQuic. All native linking (libmsquic.so) and the Microsoft.Quic P/Invoke bindings are provided by the VpnHood.Net.Quic.MsQuic.AndroidNative package; this project is pure managed code.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
9.0.15 87 10/20/2026
8.0.14 75 10/20/2026
8.0.13 115 10/13/2026
8.0.12 89 10/13/2026
8.0.11 105 10/4/2026
8.0.9 182 9/23/2026