我使用google_mobile_ads与flutter。我想知道如何添加自适应横幅广告。这是我的代码。
@override
Widget build(BuildContext context) {
TargetPlatform os = Theme.of(context).platform;
BannerAd banner = BannerAd(
listener: BannerAdListener(
onAdFailedToLoad: (Ad ad, LoadAdError error) {},
onAdLoaded: (_) {},
),
size: AdSize.banner,
adUnitId: UNIT_ID[os == TargetPlatform.iOS ? 'ios' : 'android']!,
request: AdRequest(),
)..load();
return Scaffold(
appBar: AppBar(…),
body:SafeArea(
child: Column(
children:[
SizedBox(…),
SizedBox(
child:AdWidget(
ad:banner)
),))]
试试这个:
class HomeScreen extends StatefulWidget {
const HomeScreen({Key? key}) : super(key: key);
@override
_BodyState createState() => _BodyState();
}
class _BodyState extends State< HomeScreen > {
BannerAd? _bannerAd = BannerAd(
adUnitId: Platform.isAndroid
? 'ca-app-pub-3940256099942544/6300978111'
: 'ca-app-pub-3940256099942544/2934735716',
size: AdSize.banner,
request: AdRequest(),
listener: BannerAdListener(),
);
@override
void initState() {
super.initState();
_bannerAd?.load();
}
@override
Widget build(BuildContext context) {
return Column(
children: [
Container(
alignment: Alignment.center,
child: AdWidget(ad: _bannerAd!);,
width: size.width,
height: 70,
),
],
);
}
}