UnityのAdmobでエラー『No overload for ‘HandleUserEarnedReward’ matches delegate ‘EventHandler‘』
突然発生したエラー
UnityのAdmobプラグインを更新してた時に、突然発生したエラー…
該当の部分でコンパイルエラーが何故か発生。
this.rewardedAd.OnUserEarnedReward += HandleUserEarnedReward;
エラー:No overload for 'HandleUserEarnedReward' matches delegate 'EventHandler<Reward>'
GoogleMobileAds-v7.3.1(https://github.com/googleads/googleads-mobile-unity/releases/tag/v7.3.1)にアップデートした影響なのかと思い、メソッドの引数変わったのかと思い調査しましたが、全然今まで通りでした…
原因が全く思いつかず、最悪バージョンを戻そうかと思いつつ……
原因はファイル名
いろいろと調査した結果、その原因が判明しました。
今回、リワードのローカライズ制御用の新しいスクリプトファイルを作ってたんですが、そのC#のスクリプトファイルの名前を「Reward.cs」としていたのが原因でした。ファイル名をrewardにしたらNGだった!!
RewardLocalize.csとファイル名を変更したらコンパイルエラーが取れました。
これは、かなり難しいトラップ……(;´・ω・)