【发布时间】:2020-02-27 00:23:52
【问题描述】:
有人可以为我指出集成 admob 的正确方向吗?
我能够获得插件https://pub.dev/packages/ads 显示广告,但是当用户更改小部件时我无法让它卸载广告。
有人知道怎么做吗?
class SecondRoute extends StatelessWidget {
final article;
Ads appAds;
final String appId = "ca-app-pub-4999865903647931~XXXXXXXXXX";
final String bannerUnitId = "ca-app-pub-4999865903647931/XXXXXXXxX";
// In the constructor, require a Todo.
SecondRoute({Key key, @required this.article}) : super(key: key);
@override
Widget build(BuildContext context) {
appAds = Ads(
appId,
bannerUnitId: bannerUnitId,
// screenUnitId: screenUnitId,
// keywords: <String>['ibm', 'computers'],
// contentUrl: 'http://www.ibm.com',
//childDirected: false,
testDevices: ['SM_A305YN:5554'],
testing: true,
listener: eventListener,
);
appAds.showBannerAd(anchorType: AnchorType.top, anchorOffset: 120);
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.redAccent,
title: Text(article['title']),
leading: new IconButton(
icon: new Icon(Icons.arrow_back),
onPressed: (){
appAds.hideBannerAd();
}
),
),
body: Center(
child: Container(
margin: const EdgeInsets.only(top: 40.0),
child: new SingleChildScrollView(
child: Card(
child: new Container(
padding: new EdgeInsets.all(10.0),
child: Column(
children: <Widget>[
Image.network(article['image'], fit: BoxFit.fitWidth),
Html(data: article['content']),
]
),
),
),
),
)
)
);
}
}
我希望当用户点击后退按钮时,它会移除 appAds 横幅。
【问题讨论】:
-
您是否尝试将
SecondRoute设为有状态小部件?您可以尝试将hideBannerAd函数包装在 setState 中。不确定这是否可行,我对那个包不是很熟悉 -
@DerekFredrickson 什么是最好的 admob 包?