using Chartboost.Constants;
using Chartboost.Mediation.Pangle.Common;
using UnityEngine;
namespace Chartboost.Mediation.Pangle.Android
{
internal sealed class PangleAdapter : IPangleAdapter
{
private const string PangleAdapterConfiguration = "com.chartboost.mediation.pangleadapter.PangleAdapterConfiguration";
// ReSharper disable once InconsistentNaming
private const string FunctionSetPAConsentOverride = "setPAConsentOverride";
[RuntimeInitializeOnLoadMethod]
private static void RegisterInstance()
{
if (Application.isEditor)
return;
Pangle.PangleAdapter.Instance = new PangleAdapter();
}
///
public string AdapterNativeVersion
{
get
{
using var adapterConfiguration = new AndroidJavaObject(PangleAdapterConfiguration);
return adapterConfiguration.Call(SharedAndroidConstants.FunctionGetAdapterVersion);
}
}
///
public string PartnerSDKVersion
{
get
{
using var adapterConfiguration = new AndroidJavaObject(PangleAdapterConfiguration);
return adapterConfiguration.Call(SharedAndroidConstants.FunctionGetPartnerSdkVersion);
}
}
///
public string PartnerIdentifier
{
get
{
using var adapterConfiguration = new AndroidJavaObject(PangleAdapterConfiguration);
return adapterConfiguration.Call(SharedAndroidConstants.FunctionGetPartnerId);
}
}
///
public string PartnerDisplayName
{
get
{
using var adapterConfiguration = new AndroidJavaObject(PangleAdapterConfiguration);
return adapterConfiguration.Call(SharedAndroidConstants.FunctionGetPartnerDisplayName);
}
}
///
public void SetGDPRConsentOverride(PangleGDPRConsentType gdprConsent)
{
// Do nothing on Android, deprecated.
}
///
public void SetPAConsentOverride(PanglePAConsentType paConsentType)
{
using var adapterConfiguration = new AndroidJavaObject(PangleAdapterConfiguration);
adapterConfiguration.Call(FunctionSetPAConsentOverride, (int)paConsentType);
}
///
public void SetDoNotSellOverride(PangleDoNotSellType doNotSellType)
{
// Do nothing on Android, deprecated.
}
}
}