javaandroidadmobfirebase-admob

fakeForAdDebugLog on ServerSideVerification for AdMob RewardedAd


The SSV URL Callback for my rewarded ads gets called with fake data on both UserId and CustomData, and its always "fakeForAdDebugLog".

First I load the rewardedAd with this code

             Log.e("SDL-Ads", "SETTING UP REWARDED");
             rewardedAd = new RewardedAd(mSpawner, adid);
             ServerSideVerificationOptions serverSideVerificationOptions = new ServerSideVerificationOptions.Builder().setUserId(user).build();
             rewardedAd.setServerSideVerificationOptions(serverSideVerificationOptions);
             AdRequest adRequest = new AdRequest.Builder()
             .addTestDevice("F3E00308CE83B95F00BF326CB047EBDD")
             .build();
             Log.e("SDL-Ads", "UserID: "+serverSideVerificationOptions.getUserId());
             rewardedAd.loadAd(adRequest, new RewardedAdLoadCallback() {
                 @Override
                 public void onRewardedAdLoaded() {
                   Log.e("SDL-Ads", "REWARDED LOADED");
                   me.Firebase_RewardedLoaded(1);
                 }
                 @Override
                 public void    onRewardedAdFailedToLoad(LoadAdError adError) {
                   Log.e("SDL-Ads", "REWARDED FAILED");
                   me.rewardedAd = null;
                   me.Firebase_RewardedLoaded(0);
                 }
             });

Then I show it with this one

             Log.e("SDL-Ads", "WILL SHOW REWARDED");
             me.rewardedAd.show(mSpawner, new RewardedAdCallback() {
               @Override
               public void onUserEarnedReward(RewardItem ri) {

                   Log.e("SDL-Ads", "onUserEarnedReward");
               }
               @Override
               public void onRewardedAdClosed() {
                 Log.e("SDL-Ads", "onRewardedAdClosed() RELOAD");
                 me.rewardedAd = null;
                 me.Firebase_RewardedLoaded(-1);
               }
             });

The app side of things works like a charm, onUserEarnedReward gets properly called and everything. However, when the url gets called, this is what the userId field is regardless of the value of user above:

    [user_id] => fakeForAdDebugLog

Any clues?


Solution

  • We had the same issue. Turns out (assuming you have developer options enabled) the device is enabled with Network Tracing feature , so user id and custom_data changed to fakeForAdDebugLog. It is by design for privacy protection. Please disable the Network Tracing and you should be good to go