AndroidでAdMob使ったアプリがエラーで落ちた
ビルドは問題なく通るんだけど、なぜか実行時に落ちる。
前はちゃんと AdMobの広告を表示できていたのに、再度ビルドして実行したら落ちるなんてなんでかな〜と思って確認してみたら、しょぼい原因だった…。
というわけで、メモ。
libraryのパスってどうなってるの?
エラーメッセージはこんな感じ。
E/AndroidRuntime(28945): FATAL EXCEPTION: main E/AndroidRuntime(28945): java.lang.NoClassDefFoundError: com.google.ads.AdView
AdView のクラス定義が見つからないって、思い切りライブラリがリンクできていない感じ。
とりあえず、プロジェクトを Clean してから再度ビルド&実行してみたけど結果は同じ。
とういわけで、プロジェクトの Properties から Java Build Path を調べてみる。
まずは Libraries タブ。
Android Private Libraries の中に GoogleAdMobAdsSdk はちゃんとある。
次に order and Export タブ。
あれ? Android Private Libraries にチェックが入っていない。
(けど、Google APIs にも入ってないし、これは関係ない?)
と、思ったけどとりあえず Android Private Libraries にチェックを入れてから、再度プロジェクトを Clean してビルド&実行。
今度はちゃんと起動して広告も表示された〜!
というわけで、今回は Android Private Libraries にチェックを入れたことで問題は起きなくなりました!