kmcgill88 / admob_flutter

Admob Flutter plugin that shows banner ads using native platform views.
https://pub.dartlang.org/packages/admob_flutter
ISC License
434 stars 151 forks source link

Ad failed to load : 3 #212

Closed erickximenes closed 4 years ago

erickximenes commented 4 years ago

The ad appears only when the app is installed, then it is no longer able to load. The error Ad failed to load: 3 appears.

ERROR: W/lab.lojasmacap( 5053): Accessing hidden method Lsun/misc/Unsafe;->compareAndSwapObject(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z (greylist, linking, allowed) I/Ads ( 5053): Ad failed to load : 3 I/flutter ( 5053): ################ FAILEDTOLOAD #########

My code:

import 'package:flutter/material.dart'; import 'package:flutter_map/flutter_map.dart'; import 'package:flutter/services.dart'; import 'package:latlong/latlong.dart'; import 'package:admob_flutter/admob_flutter.dart';

String _appid = "ca-app-pub-1577485202493071~9154466604"; String _idintertitial = "ca-app-pub-1577485202493071/6145994033"; String _idbanner = "ca-app-pub-1577485202493071/9244066135";

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { SystemChrome.setEnabledSystemUIOverlays(SystemUiOverlay.values); Admob.initialize(_appid); return new MaterialApp( home: new MyHomePage(), ); } }

class MyHomePage extends StatefulWidget { @override MyHomePageState createState() => new MyHomePageState(); }

class MyHomePageState extends State { AdmobInterstitial interstitialAd;

@override Widget build(BuildContext context) { return new Scaffold( appBar: new AppBar(title: new Text('Leaflet Maps')), body: new FlutterMap( options: new MapOptions( center: new LatLng(0.021501, -51.062025), minZoom: 10.0), layers: [ new TileLayerOptions( urlTemplate: "https://api.mapbox.com/styles/v1/supremoxv/ckeb9spli11vb19mr6vf4h5rt/tiles/256/{z}/{x}/{y}@2x?access_token=pk.eyJ1Ijoic3VwcmVtb3h2IiwiYSI6ImNrYnF0djNuNjBseWkyb2thcmp2OHVweXIifQ.JrjNXI6yjodG6aTnOAbN7g", additionalOptions: { 'accessToken': 'pk.eyJ1Ijoic3VwcmVtb3h2IiwiYSI6ImNrYnF0djNuNjBseWkyb2thcmp2OHVweXIifQ.JrjNXI6yjodG6aTnOAbN7g', 'id': 'mapbox.mapbox-streets-v8' }), new MarkerLayerOptions(markers: [

            new Marker(
                width: 45.0,
                height: 45.0,
                point: new LatLng(0.018403, -51.083868),
                builder: (context) => new Container(
                      child: IconButton(
                        icon: Icon(Icons.location_on),
                        color: Colors.red,
                        iconSize: 45.0,
                        onPressed: () {
                          Scaffold.of(context).showBottomSheet<void>(
                            (BuildContext context) {
                              return Container(
                                height: 200,
                                color: Colors.amber,
                                child: Center(
                                  child: Column(
                                    mainAxisAlignment:
                                        MainAxisAlignment.center,
                                    mainAxisSize: MainAxisSize.min,
                                    children: <Widget>[
                                      const Text('My House'),
                                      RaisedButton(
                                        child:
                                            const Text('Close BottomSheet'),
                                        onPressed: () =>
                                            Navigator.pop(context),
                                      )
                                    ],
                                  ),
                                ),
                              );
                            },
                          );
                        },
                      ),
                    )),

          ])
        ]));

}

@override void initState() { super.initState();

interstitialAd = AdmobInterstitial(
  adUnitId: _idintertitial,
  listener: (AdmobAdEvent event, Map<String, dynamic> args) {
    if (event == AdmobAdEvent.closed) interstitialAd.load();
    handleEvent(event, args, 'Interstitial');
  },
);
interstitialAd.load();

}

void handleEvent( AdmobAdEvent event, Map<String, dynamic> args, String adType) { switch (event) { case AdmobAdEvent.loaded: print("################ LOADED #########"); break; case AdmobAdEvent.opened: print("################ OPENED #########"); break; case AdmobAdEvent.closed: print("################ Goto next page #########"); break; case AdmobAdEvent.failedToLoad: print("################ FAILEDTOLOAD #########"); break; case AdmobAdEvent.rewarded: print("################ REWARDED #########"); break; default: } } }

hlj2722 commented 4 years ago

me too.