flutter - Flutter 导航器阻止我的 admob 广告展示
问题描述
如果我打开我的应用程序,显示启动画面,然后转到主主页,我的 admob 横幅不显示,并且整个应用程序在几秒钟后冻结。但是如果我直接从 到HomePage
,绕过启动页面,横幅显示没有问题?
void main() {
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
statusBarColor: Colors.transparent,
));
SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]).then((_) {
Admob.initialize('ca-app-pub-3940256099942544~3347511713');
runApp(MyApp());
});
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
showPerformanceOverlay: false,
// home: SplashPage(),//ads do not show
home: HomePage(),//ads show no problem
);
}
}
class SplashPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.black,
body: GestureDetector(
onTap: () {
Navigator.pushReplacement(// or with .push yields the same outcome
context,
MaterialPageRoute(
builder: (context) {
return HomePage();
},
settings: RouteSettings(isInitialRoute: true),
),
);
},
child: Container(
color: Colors.black,
child: Center(
child: Text('Splash page'),
),
),
),
);
}
}
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Text('Home Page'),
bottomNavigationBar: Container(
height: 60,
child: Column(
children: <Widget>[
AdmobBanner(
adUnitId: 'ca-app-pub-3940256099942544/6300978111',
adSize: AdmobBannerSize.BANNER,
),
],
),
),
);
}
}
知道为什么会这样吗?某些东西没有从SplashPage
直通到HomePage
允许横幅显示。
解决方案
推荐阅读
- angular - 基于mat-table中的多个下拉选择进行过滤
- javascript - jQuery 自定义验证无法正常工作
- html - 无法内联所有按钮以使其看起来像 NavBar
- java - 在文本文件中查找特定单词并将该单词存储在数组列表中
- real-time - 具有单个生产者和单个消费者的环形缓冲区的最佳大小
- node.js - 如何在发布之前安装已发布的范围包?
- php - 如何解决 Laravel 中的“Access-Control-Allow-Origin”问题?
- spring - 在 Spring Boot @Transactional 类中,如何在两次提交之间更改 Hibernate DAO 对象后执行对不同存储库的提交?
- c++ - 运行 QPropertyAnimation 后 QWiget 的奇怪行为
- c# - 从数据表更新excel表列时需要避免数据表中5k条记录的延迟