Enhance.Connector 1.0.0

.NET Standard

Requires NuGet 2.8.1 or higher.

dotnet add package Enhance.Connector --version 1.0.0
NuGet\Install-Package Enhance.Connector -Version 1.0.0
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="Enhance.Connector" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Enhance.Connector --version 1.0.0
#r "nuget: Enhance.Connector, 1.0.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Enhance.Connector as a Cake Addin
#addin nuget:?package=Enhance.Connector&version=1.0.0

// Install Enhance.Connector as a Cake Tool
#tool nuget:?package=Enhance.Connector&version=1.0.0

Enhance Drag & Drop Library by Enhance, Inc.




Install the provided .nupkg into your Xamarin project. If you run into trouble, there is a quick and easy walkthrough:


Hint: You can use Enhance in single platform applications(Android/iOS) as well as in multi-platform projects(e.g. Xamarin.Forms).

Interstitial Ads

Interstitial Ads are short static or video ads, usually shown between levels or when game is over.

  1. Check whether any ad is available:

    bool isReady = Enhance.IsInterstitialReady();

  2. Show the ad:


Note: Interstitial ads will automatically interrupt the flow of your application until the user completes interaction with the ad.

Rewarded Ads

Rewarded Ads are usually video ads which pay high CPM for the users who view them in return for an in-game reward.

  1. Check whether any ad is available:

    bool isReady = Enhance.IsRewardedAdReady();

  2. Show the ad:

    Enhance.ShowRewardedAd(Action<RewardType, int> OnRewardGranted, Action OnRewardDeclined, Action OnRewardUnavailable);

Note: Rewarded ads will automatically interrupt the flow of your application until the user completes interaction with the ad.

Banner Ads are small sized ads displayed in the top or bottom of the app.

  1. Check whether any ad is available:

    bool isReady = Enhance.IsBannerAdReady();

  2. Display the ad:

    Enhance.ShowBannerAdWithPosition(Enhance.Position position);

    Available positions:

    Enhance.Position.Top Enhance.Position.Bottom

  3. Hide the ad:


Note: You can also integrate Fixed Banner Ads through Enhance ZeroCode with no coding at all.

Offer Walls

Offer Walls show full screen of real world offers(e.g. surveys), usually with reward offered in return for a completion.

  1. Set currency callback. It's called whenever the user receives a reward from offerwall. It's important to do it in the beginning of the app's logic.

    Enhance.SetReceivedCurrencyCallback(Action<int> onCurrencyReceived)

  2. Check whether any offer wall is available:

    bool isReady = Enhance.IsOfferwallReady();

  3. Display the offer wall:


Note: Offer walls will automatically interrupt the flow of your application until the user completes interaction with the offer wall.

Special Offers

Special offers are real world offers(e.g. surveys). They are available through Enhance ZeroCode, but now you can also request them from code.

  1. Check whether any special offer is available:

    bool isReady = Enhance.IsSpecialOfferReady();

  2. Display the special offer:


Note: Special Offers will automatically interrupt the flow of your application until the user completes interaction with the special offer.


Enhance can hook into various analytics networks. By default it will track sessions, users and retention.

  1. Send a simple analytics event:

    Enhance.LogEvent(string eventType);

  2. Send a detailed analytics event with parameter:

    Enhance.LogEvent(string eventType, string paramKey, string paramValue);

Local Notifications

Local Notifications are reminders displayed on your mobile device's screen after the app becomes inactive.

  1. Ask for local notifications permission:

    Enhance.RequestLocalNotificationPermission(Action onPermissionGranted, Action onPermissionRejected);

  2. Enable a new local notification:

    Enhance.EnableLocalNotification(string title, string messsage, int delaySeconds);

  3. Disable the local notification:


In-App Purchases

Enhance library provides a set of functions which help you to easily make use of different In-App Purchases SDKs in your application.

  1. Check if In-App purchasing is currently supported:

    bool isSupported = Enhance.Purchases.IsSupported();

  2. Start the purchase flow for the given product:

    Enhance.Purchases.AttemptPurchase(string productName, Action onPurchaseSuccess, Action onPurchaseFailed);

  3. Try to consume the given product from the user's inventory:

    Enhance.Purchases.Consume(string productName, Action onConsumeSuccess, Action onConsumeFailed);

  4. Check if item is already owned:

    bool isOwned = Enhance.Purchases.IsItemOwned(string productName);

  5. Get the number of the given product that user owns, or 0 if none:

    int count = Enhance.Purchases.GetOwnedItemCount(string productName);

  6. Get the string containing the localized display title:

    string displayTitle = Enhance.Purchases.GetDisplayTitle(string productName, string defaultTitle);

  7. Get the string containing the localized display description:

    string displayDesc = Enhance.Purchases.GetDisplayDescription(string productName, string defaultDescription);

  8. Get the string containing the localized display price:

    string displayPrice = Enhance.Purchases.GetDisplayPrice(string productName, string defaultPrice);

  9. Manually restore purchases and update the user's inventory, if applicable:

    Enhance.Purchases.ManuallyRestorePurchases(Action onRestoreSuccess, Action onRestoreFailed);

Advanced Usage

Most of Enhance functions can accept additional parameters for advanced usage. For example, instead of simple Enhance.IsInterstitialAdReady() you can use Enhance.IsInterstitialAdReady(string placement).

Demo Project

For a full implementation example, please see the demo project which can be found in the 'demo_project' directory within the distribution package.

Please remember that none of these features will work properly before Enhancing your application on our website.

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp1.0 netcoreapp1.1 netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard netstandard1.0 netstandard1.1 netstandard1.2 netstandard1.3 netstandard1.4 netstandard1.5 netstandard1.6 netstandard2.0 netstandard2.1
.NET Framework net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid monoandroid10
MonoMac monomac
MonoTouch monotouch
Tizen tizen30 tizen40 tizen60
Universal Windows Platform uap uap10.0
Windows Phone wp8 wp81 wpa81
Windows Store netcore netcore45 netcore451
Xamarin.iOS xamarinios xamarinios10
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
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.0.0 1,033 1/18/2018