如何更改开屏广告的时长?
How to change the duration of app-open ad?
我正在使用 Flutter,并尝试使用应用打开广告(通过 google admob)和 Future Builder 构建应用。
因为future builder耗时较长,所以我想让广告展示时间超过5秒,或者future builder获取数据后关闭广告。
我已经实现了 admob 和 future builder。
The relationship between openApp ad and FutureBuilder
你能教我如何更改展示广告的持续时间吗?
如果您需要更多信息来回答这个问题,请告诉我。
谢谢!
代码:
AppOpenAd? openAd;
Future<void> loadInitialAd()async{
await AppOpenAd.load(
adUnitId: AdHelper.startAppAdUnitId,
request: const AdRequest(),
adLoadCallback: AppOpenAdLoadCallback(
onAdLoaded: (ad){
print("Ad is loaded");
openAd = ad;
openAd!.show();
},
onAdFailedToLoad: (error){
print("ad failed to load ${error}");
}
), orientation: AppOpenAd.orientationPortrait
);
}
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await MobileAds.instance.initialize();
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return
return MaterialApp(
home:MyHomePage());
);
}
}
class MyHomePage extends StatefulWidget {
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: FutureBuilder<List<MonumentModel>>(
future: MonumentModel.fetchMonument(),
builder: (context, snapshot) {
return
snapshot.hasData ? Container(child: Widget(snapshot!.data))
: SizedBox(child: Center(child: CircularProgressIndicator())),
没有看到代码很难帮到你,但是你检查过documentation了吗?阅读文档,似乎广告没有自动关闭,这告诉我你的广告很可能被其他东西关闭了。可能是用于显示加载屏幕的导航事件。
检查 FullScreenContentCallback
declaration 以了解广告的显示和关闭方式。
我正在使用 Flutter,并尝试使用应用打开广告(通过 google admob)和 Future Builder 构建应用。 因为future builder耗时较长,所以我想让广告展示时间超过5秒,或者future builder获取数据后关闭广告。 我已经实现了 admob 和 future builder。
The relationship between openApp ad and FutureBuilder
你能教我如何更改展示广告的持续时间吗?
如果您需要更多信息来回答这个问题,请告诉我。 谢谢!
代码:
AppOpenAd? openAd;
Future<void> loadInitialAd()async{
await AppOpenAd.load(
adUnitId: AdHelper.startAppAdUnitId,
request: const AdRequest(),
adLoadCallback: AppOpenAdLoadCallback(
onAdLoaded: (ad){
print("Ad is loaded");
openAd = ad;
openAd!.show();
},
onAdFailedToLoad: (error){
print("ad failed to load ${error}");
}
), orientation: AppOpenAd.orientationPortrait
);
}
void main() async {
WidgetsFlutterBinding.ensureInitialized();
await MobileAds.instance.initialize();
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return
return MaterialApp(
home:MyHomePage());
);
}
}
class MyHomePage extends StatefulWidget {
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: FutureBuilder<List<MonumentModel>>(
future: MonumentModel.fetchMonument(),
builder: (context, snapshot) {
return
snapshot.hasData ? Container(child: Widget(snapshot!.data))
: SizedBox(child: Center(child: CircularProgressIndicator())),
没有看到代码很难帮到你,但是你检查过documentation了吗?阅读文档,似乎广告没有自动关闭,这告诉我你的广告很可能被其他东西关闭了。可能是用于显示加载屏幕的导航事件。
检查 FullScreenContentCallback
declaration 以了解广告的显示和关闭方式。