大佬教程收集整理的这篇文章主要介绍了加载 RewardedAds 时出现 Flutter FATAL EXCEPTION 错误。 java.lang.InstantiationError: com.google.android.gms.ads.rewarded.RewardedAd,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我使用的是 google_mobile_ads plugin 版本 0.12.1+1
(这是目前最新的版本)。
我遇到了一个奇怪的错误,过去 3 天我尝试了很多方法来修复它,但没有任何成功。
请注意,它一直在运行,而且该应用程序已经上线几个月了,所以所有 AdMob 凭据都是正确的,我已经多次重新检查过。
所以我不知道到底发生了什么,但我没有其他地方可以找到解决方案,我最终在这里发布了一个问题。希望有人能帮我指点一下。
调用 reWARDedAd.load()
时,应用程序崩溃并显示如下错误消息:
E/AndroIDRuntime(27180): FATAL EXCEPTION: main
E/AndroIDRuntime(27180): Process: com.me.app,PID: 27180
E/AndroIDRuntime(27180): java.lang.InstantiationError: com.Google.androID.gms.ads.reWARDed.ReWARDedAd
E/AndroIDRuntime(27180): at io.Flutter.plugins.Googlemobileads.FlutterReWARDedAd.createReWARDedAd(FlutterReWARDedAd.java:154)
E/AndroIDRuntime(27180): at io.Flutter.plugins.Googlemobileads.FlutterReWARDedAd.load(FlutterReWARDedAd.java:95)
E/AndroIDRuntime(27180): at io.Flutter.plugins.Googlemobileads.GoogleMobileAdsPlugin.onMethodCall(GoogleMobileAdsPlugin.java:330)
E/AndroIDRuntime(27180): at io.Flutter.plugin.common.MethodChAnnel$IncomingMethodCallHandler.onmessage(MethodChAnnel.java:233)
E/AndroIDRuntime(27180): at io.Flutter.embedding.ENGIne.dart.DartMessenger.handlemessageFromDart(DartMessenger.java:85)
E/AndroIDRuntime(27180): at io.Flutter.embedding.ENGIne.FlutterJNI.handlePlatformmessage(FlutterJNI.java:818)
E/AndroIDRuntime(27180): at androID.os.messageQueue.nativePollOnce(Native Method)
E/AndroIDRuntime(27180): at androID.os.messageQueue.next(messageQueue.java:336)
E/AndroIDRuntime(27180): at androID.os.Looper.loop(Looper.java:197)
E/AndroIDRuntime(27180): at androID.app.ActivityThread.main(ActivityThread.java:8167)
E/AndroIDRuntime(27180): at java.lang.reflect.Method.invoke(Native Method)
E/AndroIDRuntime(27180): at com.androID.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
E/AndroIDRuntime(27180): at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
I/Process (27180): Sending signal. PID: 27180 SIG: 9
@H_168_3@mobileAds.instance.initialize() 在 @H_168_3@main.dart 中被调用,一旦初始化完成,ReWARDedAd
就会像这样初始化:
_reWARDedAd = ReWARDedAd(
adUnitID: AdManager.reWARDedAdUnitID,Listener: AdListener(
onReWARDedAdUserEarnedReWARD: (ReWARDedAd ad,ReWARDItem reWARD) {
print('ReWARDed Ad successful: $ad reWARD: $reWARD');
// Give reWARD to user
},onAdLoaded: (Ad ad) {
setState(() {
isAdsLoading = false;
});
},onAdFailedToload: (Ad ad,LoadAdError error) {
print('Error ReWARDed VIDeo Ad Failed to load: $error');
},),request: Adrequest())
..load();
如果我删除 ..load()
,它不会崩溃,但永远不会加载。再一次,这之前没有崩溃。
我做了什么来解决这个问题:
AndroIDManifest.xml
设置正确。注意:实时版本运行良好。我已经尝试将应用上传到封闭测试版本,但它仍然崩溃。
Flutter run --verbose
这是一个很长的日志,所以我在这里只包括错误部分,但您可以阅读所有full log here
[ +35 ms] E/AndroIDRuntime(31757): FATAL EXCEPTION: main
[ ] E/AndroIDRuntime(31757): Process: com.me.app,PID: 31757
[ ] E/AndroIDRuntime(31757): java.lang.InstantiationError:
com.Google.androID.gms.ads.reWARDed.ReWARDedAd
[ ] E/AndroIDRuntime(31757): at
io.Flutter.plugins.Googlemobileads.FlutterReWARDedAd.createReWARDedAd(FlutterReWARDedAd.java:154)
[ ] E/AndroIDRuntime(31757): at
io.Flutter.plugins.Googlemobileads.FlutterReWARDedAd.load(FlutterReWARDedAd.java:95)
[ ] E/AndroIDRuntime(31757): at
io.Flutter.plugins.Googlemobileads.GoogleMobileAdsPlugin.onMethodCall(GoogleMobileAdsPlugin.java:330)
[ ] E/AndroIDRuntime(31757): at
io.Flutter.plugin.common.MethodChAnnel$IncomingMethodCallHandler.onmessage(MethodChAnnel.java:233)
[ ] E/AndroIDRuntime(31757): at
io.Flutter.embedding.ENGIne.dart.DartMessenger.handlemessageFromDart(DartMessenger.java:85)
[ ] E/AndroIDRuntime(31757): at
io.Flutter.embedding.ENGIne.FlutterJNI.handlePlatformmessage(FlutterJNI.java:818)
[ ] E/AndroIDRuntime(31757): at androID.os.messageQueue.nativePollOnce(Native Method)
[ ] E/AndroIDRuntime(31757): at androID.os.messageQueue.next(messageQueue.java:336)
[ ] E/AndroIDRuntime(31757): at androID.os.Looper.loop(Looper.java:197)
[ ] E/AndroIDRuntime(31757): at androID.app.ActivityThread.main(ActivityThread.java:8167)
[ ] E/AndroIDRuntime(31757): at java.lang.reflect.Method.invoke(Native Method)
[ ] E/AndroIDRuntime(31757): at
com.androID.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
[ ] E/AndroIDRuntime(31757): at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
[ +33 ms] I/Process (31757): Sending signal. PID: 31757 SIG: 9
[ +261 ms] service protocol connection closed.
[ ] Lost connection to device.
[ +2 ms] execuTing: /Volumes/ME/Applications/AndroID/sdk/platform-tools/adb -s 5a53414a33573398 forWARD
--List
[ +11 ms] Exit @R_421_6756@ from: /Volumes/ME/Applications/AndroID/sdk/platform-tools/adb -s 5a53414a33573398
forWARD --List
[ ] 5a53414a33573398 tcp:59154 tcp:34485
[ +1 ms] execuTing: /Volumes/ME/Applications/AndroID/sdk/platform-tools/adb -s 5a53414a33573398 forWARD
--remove tcp:59154
[ +13 ms] DevFS: deleting filesystem on the device
(file:///data/user/0/com.me.app/code_cache/my_appCGPZRY/my_app/)
[ +257 ms] Ignored error while cleaning up DevFS: TimeoutException after 0:00:00.250000: Future not completed
[ +3 ms] execuTing: /Volumes/ME/Applications/AndroID/sdk/platform-tools/adb -s 5a53414a33573398 forWARD
--List
[ +16 ms] Exit @R_421_6756@ from: /Volumes/ME/Applications/AndroID/sdk/platform-tools/adb -s 5a53414a33573398
forWARD --List
[ +2 ms] "Flutter run" took 140,682ms.
[ +4 ms] Running shutdown hooks
[ ] Shutdown hook priority 4
[ +1 ms] Shutdown hooks complete
[ ] exiTing with @R_421_6756@
Flutter analyze
Analyzing my_app...
No issues found! (ran in 6.1s)
Flutter doctor -v
[✓] Flutter (ChAnnel stable,2.0.5,on macOS 11.2.2 20D80 darwin-x64,locale en-US)
• Flutter version 2.0.5 at /Users/ME/development/Flutter
• Framework revision adc687823a (12 days ago),2021-04-16 09:40:20 -0700
• ENGIne revision b09f014e96
• Dart version 2.12.3
• Pub download mirror https://pub.Flutter-io.cn
• Flutter download mirror https://storage.Flutter-io.cn
[✓] AndroID toolchain - develop for AndroID devices (AndroID SDK version 30.0.2)
• AndroID SDK at /Volumes/ME/Applications/AndroID/sdk
• Platform androID-30,build-tools 30.0.2
• ANDROID_HOME = /Volumes/ME/Applications/AndroID/sdk
• Java binary at: /Applications/AndroID studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
• All AndroID licenses accepted.
[✓] Xcode - develop for iOS and macOS
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.4,Build version 12D4e
• CocoaPods version 1.10.1
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] AndroID studio (version 4.1)
• AndroID studio at /Applications/AndroID studio.app/Contents
• Flutter plugin can be installed from:
? https://plugins.jetbrains.com/plugin/9212-Flutter
• Dart plugin can be installed from:
? https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.55.2)
• VS Code at /Applications/Visual studio Code.app/Contents
• Flutter extension version 3.8.0
[✓] Connected device (3 availablE)
• SM G960U1 (mobilE) • 5a5341 • androID-arm64 • AndroID 10 (API 29)
• ME iPho (mobilE) • b3ebbe938628 • ios • iOS 14.4.2
• Chrome (web) • Chrome • web-JavaScript • Google Chrome
90.0.4430.85
• No issues found!
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的加载 RewardedAds 时出现 Flutter FATAL EXCEPTION 错误。 java.lang.InstantiationError: com.google.android.gms.ads.rewarded.RewardedAd全部内容,希望文章能够帮你解决加载 RewardedAds 时出现 Flutter FATAL EXCEPTION 错误。 java.lang.InstantiationError: com.google.android.gms.ads.rewarded.RewardedAd所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。