AIDE报错:onRewardedVideoCompleted未覆写父类方法,Android Studio无此问题
解决AIDE中
onRewardedVideoCompleted重写报错问题(Android Studio中正常) 这种IDE间的报错差异我之前也碰到过,给你几个靠谱的解决思路:
1. 统一AdMob SDK版本
这是最可能的原因——你的Android Studio和AIDE用的Google移动广告SDK版本不一样!
- 先看Android Studio里模块级
build.gradle的依赖,应该是类似这样的(用谷歌指南推荐的最新版本):implementation 'com.google.android.gms:play-services-ads:22.6.0' - 然后确保AIDE项目也用完全相同的版本。如果AIDE里的SDK版本太老,父类接口里根本没有
onRewardedVideoCompleted方法,@Override注解自然会报错,而Android Studio可能已经自动拉取了最新SDK所以没问题。
2. 确认导入的是官方监听接口
检查代码里的RewardedVideoAdListener是不是谷歌官方的:
import com.google.android.gms.ads.reward.RewardedVideoAdListener;
要是不小心导入了第三方广告库的同名接口,就会出现方法不匹配的情况。Android Studio的依赖解析可能自动处理了,但AIDE识别没那么准确。
3. 清理AIDE的缓存
AIDE的缓存偶尔会抽风,导致错误识别注解:
- 彻底关闭AIDE
- 去系统设置的应用管理里找到AIDE,清理它的缓存
- 重新打开项目,等依赖同步完成后再看报错是否消失
补充说明
onRewardedVideoCompleted是AdMob激励视频的官方回调方法,但只有在较新的SDK版本里才存在。如果AIDE项目用的SDK版本太低,父类里没有这个方法,@Override就会触发"未重写父类方法"的报错,而Android Studio因为用了新SDK所以正常。
内容的提问来源于stack exchange,提问作者Matthew Vine
相关产品推荐
相关产品推荐

