AppLinks.MAUI 1.2.5

There is a newer version of this package available.
See the version list below for details.
dotnet add package AppLinks.MAUI --version 1.2.5                
NuGet\Install-Package AppLinks.MAUI -Version 1.2.5                
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="AppLinks.MAUI" Version="1.2.5" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add AppLinks.MAUI --version 1.2.5                
#r "nuget: AppLinks.MAUI, 1.2.5"                
#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.
// Install AppLinks.MAUI as a Cake Addin
#addin nuget:?package=AppLinks.MAUI&version=1.2.5

// Install AppLinks.MAUI as a Cake Tool
#tool nuget:?package=AppLinks.MAUI&version=1.2.5                

AppLinks.MAUI

Version Downloads

This library offers camera preview and barcode scanning functionality for .NET MAUI apps using native platform APIs with Google ML Kit and Apple VisionKit.

Download and Install AppLinks.MAUI

This library is available on NuGet: https://www.nuget.org/packages/AppLinks.MAUI Use the following command to install AppLinks.MAUI using NuGet package manager console:

PM> Install-Package AppLinks.MAUI

You can use this library in any .NET MAUI project compatible to .NET 8 and higher.

  1. Register app link host in MainActivity by creating one or more IntentFilter with DataScheme and DataHost.
  2. Create assetlinks.json file which contains Android package name(s) and sha256_fingerprints used to sign the package.
  3. Deploy assetlinks.json file to root web folder .well-known.
  4. Verify the app links for each package name: adb shell pm verify-app-links --re-verify {package_name}
  5. Check if verification was successful: adb shell pm get-app-links {package_name}
  1. Login to https://developer.apple.com, go to "Certificates, Identifiers & Profiles", select tab "Identifiers".
  2. Select the app identifier which should support app links.
  3. Enable the option "Associated Domains" and save the changes.
  4. Update and download all dependent provisioning profiles.
  5. Create Entitlements.plist file under Platforms/iOS and add associated domains (plist key: com.apple.developer.associated-domains).
  6. Create apple-app-site-associate file which contains app identifiers and target URL paths.
  7. Deploy apple-app-site-associate file to root web folder .well-known.
App Setup in .NET MAUI
  1. This plugin provides an extension method for MauiAppBuilder UseAppLinks which ensure proper startup and initialization. Call this method within your MauiProgram just as demonstrated in the AppLinksDemoApp:
    var builder = MauiApp.CreateBuilder()
        .UseMauiApp<App>()
        .UseAppLinks();
    

API Usage

Inject IAppLinkHandler or use the static singleton instance IAppLinkHandler.Current in your code to get access to the main features of this library.

  • IAppLinkHandler.AppLinkReceived: This event is fired as soon as an app link URL is received.
  • IAppLinkHandler.ResetCache(): Clear any cached app link data. This clears the internal queue which is used to temporarily cache received app links.

[!NOTE] If an app link is received before the AppLinkReceived event is subscribed, the received app link URL is cached for deferred delivery.

[!WARNING] App links offer a potential attack vector into your app, so ensure you validate all URI parameters and discard any malformed URIs.

Contribution

Contributors welcome! If you find a bug or you want to propose a new feature, feel free to do so by opening a new issue on github.com.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-android34.0 is compatible.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-ios17.0 is compatible.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.3.9 93 2/21/2025
1.3.2-pre 91 2/13/2025
1.3.1-pre 80 2/13/2025
1.3.0-pre 88 2/12/2025
1.2.10-pre 87 2/12/2025
1.2.9 98 1/30/2025
1.2.7-pre 75 1/27/2025
1.2.6-pre 59 1/24/2025
1.2.5 78 1/24/2025
1.2.1-pre 66 1/24/2025
1.2.0-pre 67 1/23/2025
1.1.1-pre 72 1/23/2025
1.0.5 88 1/23/2025
1.0.4-pre 66 1/22/2025
1.0.3-pre 65 1/22/2025
1.0.2-pre 60 1/22/2025
1.0.1-pre 70 1/21/2025

1.1
- Use queue to cache received app link URLs.

1.0
- Initial release.