ExzileGames.AndroidReviewBridge
1.0.25
dotnet add package ExzileGames.AndroidReviewBridge --version 1.0.25
NuGet\Install-Package ExzileGames.AndroidReviewBridge -Version 1.0.25
<PackageReference Include="ExzileGames.AndroidReviewBridge" Version="1.0.25" />
<PackageVersion Include="ExzileGames.AndroidReviewBridge" Version="1.0.25" />
<PackageReference Include="ExzileGames.AndroidReviewBridge" />
paket add ExzileGames.AndroidReviewBridge --version 1.0.25
#r "nuget: ExzileGames.AndroidReviewBridge, 1.0.25"
#:package ExzileGames.AndroidReviewBridge@1.0.25
#addin nuget:?package=ExzileGames.AndroidReviewBridge&version=1.0.25
#tool nuget:?package=ExzileGames.AndroidReviewBridge&version=1.0.25
AndroidReviewBridge
A Java bridge + C# interop library for the Google Play In-App Review API on .NET Android. Triggers the native Play review prompt from your C# code with a single async call.
Problem
The Xamarin.Google.Android.Play.Review NuGet binding wraps the Play Review API but requires manually managing ReviewInfo request tasks and launch tasks — both of which return Task<Java.Lang.Object> requiring unsafe casts. Errors surface as generic Java exceptions with no meaningful message.
Solution
A compiled Java bridge class handles the two-step flow (requestReviewFlow → launchReviewFlow) internally and exposes a single async method to C#. Result and error handling are done on the Java side and surfaced as a typed bool result.
Setup
1. Add NuGet package
dotnet add package ExzileGames.AndroidReviewBridge
2. Initialize in your Activity
using AndroidReviewBridge.Interop;
protected override void OnCreate(Bundle? savedInstanceState)
{
base.OnCreate(savedInstanceState);
ReviewBridgeManager.SetImplementation(new AndroidReviewBridgeImpl(this));
}
3. Use from shared code
using AndroidReviewBridge.Interop;
// Trigger the review flow (e.g. after completing a level or milestone)
bool completed = await ReviewBridgeManager.RequestAndLaunchReviewAsync();
Notes
- Google does not expose whether the user actually submitted a review — the result only indicates whether the flow completed without error.
- Play may suppress the prompt silently if the user has been prompted recently or has already reviewed the app. This is by design and cannot be overridden.
- Call the flow at a natural pause point (post-level, post-session) — not in response to a button press or a direct ask.
License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-android36.0 is compatible. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
-
net10.0-android36.0
- Xamarin.Google.Android.Play.Review (>= 2.0.2.7)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.