unity_ads_plugin 0.3.18 unity_ads_plugin: ^0.3.18 copied to clipboard
Unity Ads plugin for Flutter Applications. This plugin is able to display Unity Banner Ads and Unity Video Ads.
Unity Ads Plugin #
Unity Ads plugin for Flutter Applications. This plugin is able to display Unity Banner Ads and Unity Video Ads.
Getting Started #
1. Initialization: #
UnityAds.init(
gameId: 'PROJECT_GAME_ID',
onComplete: () => print('Initialization Complete'),
onFailed: (error, message) => print('Initialization Failed: $error $message'),
);
Set your Game ID.
For testing purposes set testMode
to true
.
UnityAds.isInitialized()
can be used to check if the SDK is initialized successfully.
Android only: To change ads behavior in Firebase Test Lab use firebaseTestLabMode
parameter. Possible values:
Mode | Description |
---|---|
disableAds | Ads are not displayed in the Firebase Test Lab (by default) |
showAdsInTestMode | Ads are displayed in test mode. |
showAds | Real ads are displayed, if testMode is false. |
Add shrinkResources false
and minifyEnabled false
to the /android/app/build.gradle
file to prevent runtime exception when running the application on Android in release mode.
android {
...
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
shrinkResources false
minifyEnabled false
}
}
}
2. Show Rewarded/Interstitial Video Ad: #
Load a video ad before show it.
UnityAds.load(
placementId: 'PLACEMENT_ID',
onComplete: (placementId) => print('Load Complete $placementId'),
onFailed: (placementId, error, message) => print('Load Failed $placementId: $error $message'),
);
Show a loaded ad.
UnityAds.showVideoAd(
placementId: 'PLACEMENT_ID',
onStart: (placementId) => print('Video Ad $placementId started'),
onClick: (placementId) => print('Video Ad $placementId click'),
onSkipped: (placementId) => print('Video Ad $placementId skipped'),
onComplete: (placementId) => print('Video Ad $placementId completed'),
onFailed: (placementId, error, message) => print('Video Ad $placementId failed: $error $message'),
);
Server-to-server redeem callbacks
UnityAds.showVideoAd
has serverId
parameter.
To use server-to-server callbacks, you need to set this parameter.
Read more on docs.unity.com.
3. Show Banner Ad: #
Place UnityBannerAd
widget in your app.
UnityBannerAd(
placementId: 'PLACEMENT_ID',
onLoad: (placementId) => print('Banner loaded: $placementId'),
onClick: (placementId) => print('Banner clicked: $placementId'),
onShown: (placementId) => print('Banner shown: $placementId'),
onFailed: (placementId, error, message) => print('Banner Ad $placementId failed: $error $message'),
)
Privacy consent #
Read more about privacy consent in Unity Ads documentation.
Use the following code to pass the appropriate consent flags to the Unity Ads SDK:
UnityAds.setPrivacyConsent(<Privacy Consent type>, true)
FAQ #
Getting 'Unhandled Exception: PlatformException(error, Field loadTimeoutMs_ for j2.b2 not found....' when running the application on Android in release mode
Adding shrinkResources false
and minifyEnabled false
to the /android/app/build.gradle
file resolves the problem.
android {
...
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
shrinkResources false
minifyEnabled false
}
}
}
Donate #
Your donation motivates me to work more on plugins and packages. If you found this plugin helpful and would like to thank me: