using System.Runtime.InteropServices; using Chartboost.Constants; using Chartboost.Mediation.Pangle.Common; using UnityEngine; namespace Chartboost.Mediation.Pangle.IOS { internal sealed class PangleAdapter : IPangleAdapter { [RuntimeInitializeOnLoadMethod] private static void RegisterInstance() { if (Application.isEditor) return; Pangle.PangleAdapter.Instance = new PangleAdapter(); } /// public string AdapterNativeVersion => _CBMPangleAdapterAdapterVersion(); /// public string PartnerSDKVersion => _CBMPangleAdapterPartnerSDKVersion(); /// public string PartnerIdentifier => _CBMPangleAdapterPartnerId(); /// public string PartnerDisplayName => _CBMPangleAdapterPartnerDisplayName(); /// public void SetGDPRConsentOverride(PangleGDPRConsentType gdprConsent) { // Do nothing on iOS, deprecated. } /// public void SetPAConsentOverride(PanglePAConsentType paConsentType) => _CBMPangleAdapterSetPAConsentOverride((int)paConsentType); public void SetDoNotSellOverride(PangleDoNotSellType doNotSellType) { // Do nothing on iOS, deprecated. } [DllImport(SharedIOSConstants.DLLImport)] private static extern string _CBMPangleAdapterAdapterVersion(); [DllImport(SharedIOSConstants.DLLImport)] private static extern string _CBMPangleAdapterPartnerSDKVersion(); [DllImport(SharedIOSConstants.DLLImport)] private static extern string _CBMPangleAdapterPartnerId(); [DllImport(SharedIOSConstants.DLLImport)] private static extern string _CBMPangleAdapterPartnerDisplayName(); [DllImport(SharedIOSConstants.DLLImport)] private static extern void _CBMPangleAdapterSetPAConsentOverride(int gdprConsent); } }