BlueStack SDK - Unity Plugin
Introduction
BlueStack unity plugin provides functionalities to integrate native(Android and iOS) BlueStack SDKs into unity project.
Using this plugin Game developer can display ads on their game from BlueStack and other third-party ad networks.
This SDK supports four types of Ads:
- Banner Ads
- Interstitial Ads
- Rewarded Ads
- Native Ads
Prerequisites
- Use Unity 2020 or higher
- Android
- Minimum Android API level of 21 or higher
- Target Android API level 31 or higher
- iOS
- Xcode 15.3 or higher
- iOS 12.2 or higher
- CocoaPods
:::info
Android API level can be set in Project Settings > Player > Android > Other Settings > Other Settings.
:::
Import the package
-
Add scoped registries in Edit -> Project Settings -> Package Manager -> Add Scoped Registry
-
Add npm registry for BlueStack
Name: Azerion
URL: http://registry.npmjs.com
Scope(s): com.azerion.bluestack
-
BlueStack Unity package has a indirect dependency of EDM4U which need to be resolved using UPM.
Name: package.openupm.com
URL: https://package.openupm.com
Scope(s): com.google.external-dependency-manager
-
Update Packages/manifest.json
{
"dependencies": {
"com.azerion.bluestack": "3.0.0"
}
}
Initialize the SDK
Before loading ads, you need to initialize the BlueStack SDK by calling BlueStackAds.Initialize()
This needs to be done only once, ideally at app launch.
Here's an example:
...
using Azerion.BlueStack.API;
public class BlueStackAdController : MonoBehaviour
{
public void Start()
{
Settings settings = new Settings(isDebugModeEnabled: true);
BlueStackAds.Initialize(appId, settings, HandleSDKInitCompleteAction);
}
private void HandleSDKInitCompleteAction(SDKInitializationStatus sdkInitializationStatus)
{
bool isSuccess = sdkInitializationStatus.IsSuccess;
string description = sdkInitializationStatus.Description;
if (isSuccess)
{
Debug.Log("BlueStack SDK initialization success: " + description);
}
else
{
Debug.Log("BlueStack SDK initialization failed: " + description);
}
}
}
Show ads
Here's an example of how to display a banner ad:
using Azerion.BlueStack.API;
using Azerion.BlueStack.API.Banner;
public class BlueStackAdsController : MonoBehaviour
{
...
private BannerAd _bannerAd;
...
private void CreateBanner()
{
_bannerAd = new BannerAd(placementId, adPosition);
}
private void DisplayBanner()
{
_bannerAd.OnBannerDidLoad += (sender, args) =>
{
_bannerAd?.Show();
};
_bannerAd?.Load(AdSize.Banner);
}
}
Documentation