private void Awake()
 {
     if (ATTrackingStatusBinding.GetAuthorizationTrackingStatus() == ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED)
     {
         ATTrackingStatusBinding.RequestAuthorizationTracking(CallbackReceived);
     }
 }
示例#2
0
    // Start is called before the first frame update
    private void Start()
    {
        var status = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();

        Debug.LogFormat("Tracking status at start: {0}", status);
        m_PreviousStatus = status;

        SkAdNetworkBinding.SkAdNetworkUpdateConversionValue(0);
        SkAdNetworkBinding.SkAdNetworkRegisterAppForNetworkAttribution();
    }
    // Use this for initialization
    void Start()
    {
#if UNITY_IOS
        if (float.Parse(UnityEngine.iOS.Device.systemVersion) >= 14.0f)
        {
            Debug.Log("Unity iOS Support: Requesting iOS App Tracking Transparency native dialog.");

            ATTrackingStatusBinding.RequestAuthorizationTracking();
        }
#endif
    }
        private IEnumerator WatchAttStatus()
        {
            ATTrackingStatusBinding.RequestAuthorizationTracking();

            while (!_isReady)
            {
                yield return(new WaitForSeconds(0.1f));

                GetAttStatus();
            }
        }
示例#5
0
    public void Start()
    {
        PlatformInterface.instance.logger.Log("PlatformAdMobAdsInit.Start()");

        // Initialize the Google Mobile Ads SDK.
        MobileAds.Initialize(status => { });

        var testDeviceList       = new List <string> {
            //"751709a03251817c6a3d7d3f7072ec57" // iPhone 6s
        };
        var requestConfiguration = new RequestConfiguration.Builder().SetTestDeviceIds(testDeviceList).build();

        MobileAds.SetRequestConfiguration(requestConfiguration);

        // 광고 사운드 끄기
        MobileAds.SetApplicationMuted(true);

        var adUnitId = PlatformInterface.instance.config.GetAdMobRewardVideoAdUnitId();

        // Get singleton reward based video ad reference.
        rewardBasedVideo = new RewardedAd(adUnitId);

        rewardBasedVideo.OnAdLoaded              += HandleOnAdLoaded;
        rewardBasedVideo.OnAdFailedToLoad        += HandleAdFailedToLoad;
        rewardBasedVideo.OnAdOpening             += HandleAdOpening;
        rewardBasedVideo.OnAdClosed              += HandleAdClosed;
        rewardBasedVideo.OnAdFailedToShow        += HandleAdFailedToShow;
        rewardBasedVideo.OnAdDidRecordImpression += HandleAdDidRecordImpression;
        rewardBasedVideo.OnUserEarnedReward      += HandleUserEarnedReward;
        rewardBasedVideo.OnPaidEvent             += HandlePaidEvent;

        RequestRewardBasedVideo();

#if UNITY_IOS
        var trackingStatus = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();
        Debug.Log($"ATTrackingStatusBinding.GetAuthorizationTrackingStatus()={trackingStatus}");
        switch (trackingStatus)
        {
        case ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED:
            ATTrackingStatusBinding.RequestAuthorizationTracking();
            break;

        case ATTrackingStatusBinding.AuthorizationTrackingStatus.AUTHORIZED:
            AudienceNetwork.AdSettings.SetAdvertiserTrackingEnabled(true);
            break;

        case ATTrackingStatusBinding.AuthorizationTrackingStatus.RESTRICTED:
        case ATTrackingStatusBinding.AuthorizationTrackingStatus.DENIED:
            AudienceNetwork.AdSettings.SetAdvertiserTrackingEnabled(false);
            break;
        }
#endif
    }
        public void RequestAuthorizationTracking()
        {
#if UNITY_IOS
            Debug.Log("Unity iOS Support: Requesting iOS App Tracking Transparency native dialog.");

            ATTrackingStatusBinding.RequestAuthorizationTracking(AuthorizationTrackingReceived);

            sentTrackingAuthorizationRequest?.Invoke();
#else
            Debug.LogWarning("Unity iOS Support: Tried to request iOS App Tracking Transparency native dialog, " +
                             "but the current platform is not iOS.");
#endif
        }
示例#7
0
    // Update is called once per frame
    private void Update()
    {
        if (!m_Once)
        {
            m_Once = true;
            ATTrackingStatusBinding.RequestAuthorizationTracking();
        }

        var status = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();

        if (m_PreviousStatus != status)
        {
            m_PreviousStatus = status;
            Debug.LogFormat("Tracking status updated: {0}", status);
        }
    }
示例#8
0
        void Start()
        {
#if UNITY_IOS
            // check with iOS to see if the user has accepted or declined tracking
            var status = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();

            if (status == ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED)
            {
                var contextScreen = Instantiate(contextScreenPrefab).GetComponent <ContextScreenView>();

                // after the Continue button is pressed, and the tracking request
                // has been sent, automatically destroy the popup to conserve memory
                contextScreen.sentTrackingAuthorizationRequest += () => Destroy(contextScreen.gameObject);
            }
#else
            Debug.Log("Unity iOS Support: App Tracking Transparency status not checked, because the platform is not iOS.");
#endif
        }
        private void GetAttStatus()
        {
#if UNITY_IOS && !UNITY_EDITOR
            var s = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();

            if (s != ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED)
            {
                Status = (AttStatus)Enum.Parse(typeof(AttStatus), s.ToString());
                Debug.Log($"---------------- AppTransparencyTracker response from user // status is {Status.ToString()} / {s.ToString()}");
            }
            else
            {
                return;
            }

            _isReady = true;
            Debug.Log($"----- AppTransparencyTracker complete // status = {Status}");
#endif
            SendOnGetRequest();
        }
示例#10
0
 //[UnityPlatform (exclude = new[] { RuntimePlatform.IPhonePlayer })]    //Need to find a way to programatically set state on the iPhone for this app otherwise, even on iOS initial state will be Not Determined.
 public void TestTrackingStatusMessageUnsupported()
 {
     Assert.That(ATTrackingStatusBinding.GetAuthorizationTrackingStatus(), Is.EqualTo(ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED));
 }
示例#11
0
    public void Start()
    {
        SushiDebug.Log("PlatformAdMobAdsInit.Start()");
        if (PlatformIapManager.instance.NoAdsPurchased)
        {
            Debug.Log("PlatformIapManager.NoAdsPurchased = true (thank you!)");
        }
        else
        {
#if BALLOON_TEST_ADS
#if UNITY_ANDROID
            string appId = "ca-app-pub-3940256099942544~3347511713";
#elif UNITY_IPHONE
            string appId = "ca-app-pub-3940256099942544~1458002511";
#else
            string appId = "unexpected_platform";
#endif
#else
#if UNITY_ANDROID
            var appId = "ca-app-pub-5072035175916776~9742483955";
#elif UNITY_IOS
            string appId = "ca-app-pub-5072035175916776~2508482457";
#else
            string appId = "unexpected_platform";
#endif
#endif
            // Initialize the Google Mobile Ads SDK.
            MobileAds.Initialize(appId);

            // Get singleton reward based video ad reference.
            rewardBasedVideo = RewardBasedVideoAd.Instance;

            // Called when an ad request has successfully loaded.
            rewardBasedVideo.OnAdLoaded += HandleRewardBasedVideoLoaded;
            // Called when an ad request failed to load.
            rewardBasedVideo.OnAdFailedToLoad += HandleRewardBasedVideoFailedToLoad;
            // Called when an ad is shown.
            rewardBasedVideo.OnAdOpening += HandleRewardBasedVideoOpened;
            // Called when the ad starts to play.
            rewardBasedVideo.OnAdStarted += HandleRewardBasedVideoStarted;
            // Called when the user should be rewarded for watching a video.
            rewardBasedVideo.OnAdRewarded += HandleRewardBasedVideoRewarded;
            // Called when the ad is closed.
            rewardBasedVideo.OnAdClosed += HandleRewardBasedVideoClosed;
            // Called when the ad click caused the user to leave the application.
            rewardBasedVideo.OnAdLeavingApplication += HandleRewardBasedVideoLeftApplication;

            RequestRewardBasedVideo();
            RequestInterstitial();

            // Called when an ad request has successfully loaded.
            interstitial.OnAdLoaded += HandleOnAdLoaded;
            // Called when an ad request failed to load.
            interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
            // Called when an ad is shown.
            interstitial.OnAdOpening += HandleOnAdOpened;
            // Called when the ad is closed.
            interstitial.OnAdClosed += HandleOnAdClosed;
            // Called when the ad click caused the user to leave the application.
            interstitial.OnAdLeavingApplication += HandleOnAdLeavingApplication;
        }

#if UNITY_IOS
        var trackingStatus = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();
        Debug.Log($"ATTrackingStatusBinding.GetAuthorizationTrackingStatus()={trackingStatus}");
        switch (trackingStatus)
        {
        case ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED:
            ATTrackingStatusBinding.RequestAuthorizationTracking();
            break;

        case ATTrackingStatusBinding.AuthorizationTrackingStatus.AUTHORIZED:
            //AudienceNetwork.AdSettings.SetAdvertiserTrackingEnabled(true);
            break;

        case ATTrackingStatusBinding.AuthorizationTrackingStatus.RESTRICTED:
        case ATTrackingStatusBinding.AuthorizationTrackingStatus.DENIED:
            //AudienceNetwork.AdSettings.SetAdvertiserTrackingEnabled(false);
            break;
        }
#endif
    }