2013年7月21日日曜日

Android開発環境を更新したら、既存のアプリが動かなくなった

ある日、過去のAndroidプロジェクトが全て動かなくなった。

最近やったことを思い返してみる・・
Androidシステム開発環境を更新したんでした。

なぜかというと、Developer Console に新しく現れた「ゲームサービス」を使ってみたいから!
テストプログラムを動かして、これまで作ったアプリに組み込みをせこせこ行おう!と思ったのです。

そのためには、開発環境をあれこれ更新しなければなりませんでした。
・・・と言っても、ほとんどEclipse任せ。
画面表示されるメッセージに言われるままに、更新を繰り返しました。
随分いろいろなライブラリやらツールが入れ替わったようです。。

ゲームサービスのサンプルは何とか動くようになったのですが、
代わりにそれまでのアプリがうごかなくなった。。

現象はこんな感じ。。

07-21 11:18:21.656: E/AndroidRuntime(23900): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.domain.app/com.kdomain.app.MainActivity}: android.view.InflateException: Binary XML file line #101: Error inflating class com.google.ads.AdView
07-21 11:18:21.656: E/AndroidRuntime(23900):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1658)
07-21 11:18:21.656: E/AndroidRuntime(23900):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1674)
07-21 11:18:21.656: E/AndroidRuntime(23900):  at android.app.ActivityThread.access$1500(ActivityThread.java:117)


ぐぐってみると、すぐに見つかりました。
http://stackoverflow.com/questions/10523703/error-inflating-class-com-google-ads-adview

この人と同じ現象!
でも、この人の場合は、libフォルダを新たに作って、そこにライブラリを置きましょうというのが解決策だったみたいですが、私の場合は既にあります。
・・とにかくライブラリ周りの問題と思い、あれこれ再チェック。
すると、Javaのビルドパスの設定から、GoogleAdMobAdsSdk-6.3.0.jar のチェックが外れているではありませんか!
他の動かなくなったアプリも同じでした。

チェックをつけてビルド・実行しなおしたら、動きました。


あーよかった。
どんなことでも、主原因ってたいしたことがない場合が本当に多いものですね。


0 件のコメント:

コメントを投稿