Strict Secure Cookie Policy for Google Ads

Viewed 242

I recently integrated google_mobile_ads plugin for Flutter after firebase_admob plugin got deprecated. Ever since then my Rewarded Ads stopped working. These are the errors I get:

(13077): This request is sent from a test device. E/chromium(13077): [ERROR:cookie_manager.cc(137)] Strict Secure Cookie policy does not allow setting a secure cookie for http://googleads.g.doubleclick.net/ for apps targeting >= R. Please either use the 'https:' scheme for this URL or omit the 'Secure' directive in the cookie value. W/Ads (13077): #004 The webview is destroyed. Ignoring action.

My code is as below:

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  MobileAds.instance.initialize();
  InAppPurchaseConnection.enablePendingPurchases();

  runApp(MyApp());
}

class _RewardedVideoState extends State<RewardedVideo> {
  bool _rewardedReady = false;
  RewardedAd _rewardedAd;

  static final AdRequest _adRequest = AdRequest(
    keywords: <String>['Puzzles', 'Games', 'Word Games'],
    nonPersonalizedAds: true,
  );


  @override
  void didChangeDependencies() {
    createRewardedAd();
    super.didChangeDependencies();
  }

  void createRewardedAd([Score userScore]) {
    print('Inside createRewardedAd');
    // RequestConfiguration.Builder().setTestDeviceIds(Arrays.asList("CFA70A4A1BD59DA3323D586CA8BD2541"))
    _rewardedAd = RewardedAd(
      adUnitId: RewardedAd.testAdUnitId,
      request: _adRequest,
      listener: AdListener(
          onAdLoaded: (Ad ad) {
            print('${ad.runtimeType} loaded. RADHA ');
            _rewardedReady = true;
          },
          onAdFailedToLoad: (Ad ad, LoadAdError error) {
            print('${ad.runtimeType} failed to load: $error');
            ad.dispose();
            _rewardedAd = null;
            createRewardedAd(userScore);
          },
          onAdOpened: (Ad ad) => print('${ad.runtimeType} onAdOpened.'),
          onAdClosed: (Ad ad) {
            print('${ad.runtimeType} closed.');
            ad.dispose();
            createRewardedAd(userScore);
          },
          onApplicationExit: (Ad ad) =>
              print('${ad.runtimeType} onApplicationExit.'),
          onRewardedAdUserEarnedReward: (RewardedAd ad, RewardItem reward) {
            userScore.updateHintsEarned(reward.amount);
          }),
    )..load();
    print('Completed RewardedAd Load ' + _rewardedAd.toString());
  }

  @override
  void dispose() {
    _rewardedAd.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    final Score userScore = Provider.of<Score>(context, listen: false);
    print('Inside RewardedVideo widget *** ........');
    try {
      if (_rewardedReady) {
        print('Showing rewardedAd ***');
        _rewardedAd.show();
        _rewardedReady = false;
        _rewardedAd = null;
      } else
        createRewardedAd(userScore);
    } catch (e) {
      print("error in showing ad: " + e.toString());
    }
    return SizedBox(
      height: 0,
    );
  }
}

I am able to get banner ads (not included in this code) but rewarded ad does not load at all. Any idea what might be going wrong here?

0 Answers
Related