HyprMX Unity Adapters
SDK Documentation
  • HyprMX Unity Adapters
  • Mediators
    • AdMob Unity Adapter Plugin
      • Admob Unity Adapter Plugin Change Log
    • AppLovin MAX
      • MAX Unity Adapter Plugin Change Log
    • Chartboost Mediation
    • Digital Turbine FairBid
    • Unity LevelPlay
    • X3M XMediator
Powered by GitBook
On this page
  • Introduction
  • Upgrading to 6.4.2.2
  • Integrating HyprMX in Your Unity Project
  • Integrating HyprMX on the AdMob Dashboard Using Custom Events
  • iOS Configuration
  • Orientation
  • Configuring Privacy Controls
  • SKAdNetwork Identifier
  • Optional: Tag for Child Directed Treatment
  • Optional: User Consent
  • Optional: Audio Banner Ad Event Callbacks
  • Setting an Audio Listener on HyprMX
  • Handling Interruptions
  • Refresh Requirements
  • Clearing Interruptions
  • License
  1. Mediators

AdMob Unity Adapter Plugin

PreviousHyprMX Unity AdaptersNextAdmob Unity Adapter Plugin Change Log

Last updated 14 days ago

Introduction

The HyprMX Unity AdMob Adapter Plugin allows you to integrate HyprMX in your AdMob rewarded, interstitial, and banner/MREC waterfalls.

If you're upgrading from an older version, please refer to the . If you're installing the plugin for the first time, please follow our .

This version supports Unity AdMob plugin 8.0.0 and above.

Upgrading to 6.4.2.2

User ID has been removed in HyprMX-AdMob 6.4.2.0+. Please follow the steps below to remove the configuration.

  1. Remove references to HyprMXAdapterConfiguration.SetUserId("custom user id");

Integrating HyprMX in Your Unity Project

  1. Download the HyprMX Unity above.

  2. Open your existing application in the Unity IDE.

  3. Choose Assets > Import Package > Custom Package... to bring up the File Explorer (Windows) or Finder (Mac).

  4. Select the HyprMX Unity AdMob Adapter package, and the Import Unity Package dialog box displays all the items in the package pre-checked and ready to install.

  5. Install the package.

Integrating HyprMX on the AdMob Dashboard Using Custom Events

  1. Create your Mediation Group on the AdMob dashboard. If you are integrating Interstitial and Rewarded Video, follow these steps for both.

  2. In the Ad Sources section, select Add Custom Event.

  3. In the popup, enter HyprMX in the label field and set the default eCPM (e.g. $15.00).

  4. Click 'Continue'.

  5. Set the adapter Class Name using the table below. Plugin with New API:

    AdMob Ad Format

    iOS "Class Name"

    Android "Class Name"

    HYPRAdMobRewardedAdapter

    com.hyprmx.android.HyprMXCustomEventRewarded

    HYPRAdMobVideoAdapter

    com.hyprmx.android.HyprMXCustomEventInterstitial

    HyprMXCustomEventBanner

    com.hyprmx.android.HyprMXCustomEventBanner

  6. In the "Parameter" field, enter the distributor ID and placement name assigned to you by your HyprMX account manager. Note that the keys are case sensitive.

    { "distributorID": "YOUR_DISTRIBUTOR_ID", "placementName": "REWARDED"}
  7. Click 'Done' and then 'Save'.

iOS Configuration

1. Configure your iOS Resolver settings to embed Dynamic Frameworks:

  • Open Assets -> External Dependency Manager -> iOS Resolver -> Settings

  • Enable "Always add the main target to Podfile"

2. If you prefer to enable ATS, uncheck the "Allow Downloads over HTTP" checkbox in Player Settings.

3. When the checkbox is unchecked, add the following keys to the exported iOS project's Info.plist:

  • NSAllowsArbitraryLoads

  • NSAllowsArbitraryLoadsForMedia

  • NSAllowsArbitraryLoadsInWebContent

Orientation

HyprMX recommends your app support all orientations globally to maximize ad fill, as HyprMX ads may be shown in any orientation, and our view controller needs your app to support that behavior. You can configure this by selecting all possible orientations in your projects Player Settings -> Resolution and Presentation. For your iOS target, set your Default Orientation to Auto Rotation and select all orientation check boxes:

Please note, this setup does not require that your Game Scene's interface support all orientations. You just have to configure each of the supported orientations on the Screen object when your scene loads:

    public void Start()
    {
#if UNITY_IOS
    Screen.autorotateToPortrait = false;
    Screen.autorotateToPortraitUpsideDown = false;
    Screen.autorotateToLandscapeLeft = true;
    Screen.autorotateToLandscapeRight = true;
#endif
    }

Configuring Privacy Controls

iOS requires that the use of a user's camera, calendar, photo library, IDFA, etc. be declared by advertisers in the plist. Add all of the following entries to your app's plist.

<key>NSCameraUsageDescription</key>
    <string>${PRODUCT_NAME} requests write access to the Camera</string>
<key>NSCalendarsUsageDescription</key>
    <string>${PRODUCT_NAME} requests access to the Calendar</string>
<key>NSPhotoLibraryUsageDescription</key>
    <string>${PRODUCT_NAME} requests access to the Photo Library</string>
<key>NSPhotoLibraryAddUsageDescription</key>
    <string>${PRODUCT_NAME} requests write access to the Photo Library</string> 
<key>NSUserTrackingUsageDescription</key>
    <string>${PRODUCT_NAME} would like to show you personalized ads</string>

Note: Photo Usage and the Photo Add Usage keys are required by the framework to ensure all rich media advertisements are supported.

SKAdNetwork Identifier

The HyprMX 6.0.0+ SDK supports Apple's new SKAdNetwork for Attribution. To add the HyprMX SKAdNetwork ID to your info.plist:

<key>SKAdNetworkItems</key>
<array>
    <dict>
        <key>SKAdNetworkIdentifier</key>
        <string>nu4557a4je.skadnetwork</string>
    </dict>
    ...
</array>

Optional: Tag for Child Directed Treatment

Optional: User Consent

HyprMX provides the HyprMXAdapterConfiguration.SetHasUserConsent API to indicate a user’s consent status. This API will be used to indicate a user’s opt-in or opt-out consent for the collection and use of personal data under applicable laws and jurisdictions (GDPR, CPRA, etc.).

On App launch, the HyprMX SDK's Consent value will be CONSENT_STATUS_UNKNOWN. You can set CONSENT_DECLINED by calling SetHasUserConsent(false), or CONSENT_GIVEN with SetHasUserConsent(true) depending on the user's consent collected by your application.

It is recommended to set the consent status once on Start and whenever your User changes their consent status.

using GoogleMobileAds.Api.Mediation.HyprMX;

public void Start()
{    
    // User Declined Consent
    HyprMXAdapterConfiguration.SetHasUserConsent(false);
    
    // User Granted Consent
    HyprMXAdapterConfiguration.SetHasUserConsent(true);
}

Optional: Audio Banner Ad Event Callbacks

Setting an Audio Listener on HyprMX

To receive audio event callbacks, implement the IHyprMXAudioListener interface and set your delegate object to HyprMXAudioEventBus.Instance.listener.

public class MyGameObject : MonoBehaviour, IHyprMXAudioListener
{
    public void Start()
    {
        HyprMXAudioEventBus.Instance.listener = this;
    }
    
    #region IHyprMXAudioListener
    public void onAdAudioStart()
    {
        Debug.Log("onAdAudioStart");
    }

    public void onAdAudioEnd()
    {
        Debug.Log("onAdAudioEnd");
    }
    #endregion
}

Handling Interruptions

When an Audio Banner Ad begins playing, you will receive an adAudioWillStart callback from your audioChangeDelegate. You should use this callback to pause your application's current audio player.

AudioSource audioSource;
public void onAdAudioStart()
{
    audioSource.Pause();
}

Refresh Requirements

An Audio Banner Ad must remain on screen for the duration of the audio playback. In order to ensure the banner placement is not refreshed until the audio is complete, please set the refresh interval in your mediator's dashboard to 30 seconds or greater.

Clearing Interruptions

When an Audio Banner Ad has completed playback, you will receive an adAudioDidEnd callback from your audioChangeDelegate. You should use this callback to resume your application's audio player.

AudioSource audioSource;
public void onAdAudioEnd()
{
    audioSource.Play();
}

License

Note: SKAdNetwork IDs are case-sensitive. For more information about SKAdNetwork please refer to Apple's .

Regional laws and regulations such as COPPA, GDPR, Google Play Store policies, and require child-directed treatment of applicable users.

If you participate in , are listed in Google Play’s Family section, or include children as one of the target audiences, it is your responsibility as the app developer to ensure compliance with regional laws and regulations, and Google Play's Families Program, including, and not limited to, to prevent access to the AAID for end-users flagged as children.

For instructions on how to tag the ad request as child-directed, please follow

Refer to our Banner/MREC Ads guide (, ) to learn more about Audio Banner Ads.

By integrating the HyprMX SDK, you are agreeing to the .

documentation
Apple's Privacy Policy
Google Play’s Families Program
Google Play Families Policies
AdMob's child-directed setting documentation.
iOS
Android
End User License Agreement
Rewarded Ads (New API)
Interstitial
Banner/MREC
Upgrade Guide
Setup Guide
AdMob Adapter Plugin
2KB
HyprMX-AdMob-Plugin-6.4.2.2.unitypackage