Android エラー java.lang.NoClassDefFoundError com.google.android.gms.R$string

Android

Android エラー java.lang.NoClassDefFoundError com.google.android.gms.R$string

次のようなエラーで、アプリが落ちてしまうということがありました。
一部の端末だけで、起こる現象です。

 java.lang.NoClassDefFoundError: com.google.android.gms.R$string
 at com.google.android.gms.common.GooglePlayServicesUtil.c(Unknown Source)
 at com.google.android.gms.common.GooglePlayServicesUtil.getErrorDialog(Unknown Source)
 at com.google.android.gms.common.GooglePlayServicesUtil.getErrorDialog(Unknown Source)
 at smart.location.admin.AbstractActivity.onCreate(AbstractActivity.java:135)
 at smart.location.admin.MenuActivity.onCreate(MenuActivity.java:71)
 at android.app.Activity.performCreate(Activity.java:5104)
 at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2186)
 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2272)
 at android.app.ActivityThread.access$600(ActivityThread.java:171)
 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1276)
 at android.os.Handler.dispatchMessage(Handler.java:99)
 at android.os.Looper.loop(Looper.java:137)
 at android.app.ActivityThread.main(ActivityThread.java:5216)
 at java.lang.reflect.Method.invokeNative(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:511)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:798)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:565)
 at dalvik.system.NativeStart.main(Native Method)

google play serviceのライブラリも正しく読み込まれているのに、なぜ??
と思いきや、
「そういえば、最近 google play serviceでエラーが出てたので、ライブラリのパスをSDK内にあるライブラリに変更したんだっけ…」
と思い当たりました。

そう、公式ページにあるように
http://developer.android.com/google/play-services/setup.html#Setup

You should be referencing a copy of the library that you copied to your development workspace—you should not reference the library directly from the Android SDK directory.

SDKディレクトリの中にあるライブラリを直接参照してはいけないんですね(>_<) 自分のワークスペースなどに、コピペして移動させてから、参照すること!です。 コピペしたライブラリを読み込むようにしたら、治りました。 ちなみに、不具合のあった端末は 富士通ARROWS F-01F です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です