在 pubspec.yaml 中更新 admob_flutter 版本或使用其他插件
在 Flutter 中使用 admob_flutter package 可能会导致在 Debug 模式下出现错误,但在 Release 模式下则正常运行。此问题是由于 Flutter 运行 Debug 模式时,会启用 dart 的 JIT 编译器,而 admob_flutter package 中使用的 AdMob SDK 并不支持 JIT 编译器。因此,需要更新 admob_flutter 版本,或使用其他支持 JIT 编译器的插件代替 admob_flutter。
下面是更新 admob_flutter 版本的示例:
dependencies:
admob_flutter: ^2.0.0
注意:更新 admob_flutter 版本可能会导致代码中的一些 API 发生变化,需要进行相应的修改。
另外,如果您不想更新 admob_flutter 版本,还可以使用其他支持 JIT 编译器的插件代替 admob_flutter,例如 google_mobile_ads 或 flutter_ad_manager。
使用 google_mobile_ads 的示例:
dependencies:
google_mobile_ads: ^0.13.0
import 'package:google_mobile_ads/google_mobile_ads.dart';
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State {
BannerAd _ad;
@override
void initState() {
super.initState();
// 初始化 AdMob
MobileAds.instance.initialize();
// 加载 Banner 广告
_ad = BannerAd(
adUnitId: 'your-ad-unit-id',
size