Google Play 게임 서비스 업적을 추가 한 후 많은 고객이이 오류가 발생합니다. 우리의 애플 리케이션. 트레이스에는 두 가지 유형이 있는데,이 최신 추적 (아래의 두 번째 추적)은 4.0.4 디바이스에서 android.app.Application.onLowMemory()로 시작합니다.java.lang.ClassCastException : com.google.android.gms.common.images.e를 android.content.ComponentCallbacks에 전송할 수 없습니다.
나는 추적에 의아해합니다. google-play-services_lib이 com.google.android.gms.common.images.e의 인스턴스를 (그 무엇이든지) 마치 ComponentCallbacks 인 것처럼 등록하면 앱이 해당 인스턴스의 메소드를 호출하려고 할 때 캐스트 예외가 발생 했습니까? onConfigurationChanged() 또는 onLowMemory()로 인해 보았던 두 가지 유형의 스택은 모두 http://developer.android.com/reference/android/content/ComponentCallbacks.html
이 예외가 발생 했습니까? 우리의 프로젝트에 google-play-services_lib를 추가 한 후 두 번이나 얻었습니다 (우리는 업적을 위해 그것을 사용합니다). USB가 연결 해제되었을 때 일시 중지 된 것처럼 보였을 때 일시 중지되었을 때 (예 : 홈 버튼) 앱이 활성화되지 않은 경우에 발생합니다. 구성이 변경되면 기기가 처리 중에 세로/가로로 전환되었을 가능성이 있습니다. 쉽게 재현 할 수 없으므로 아직 어떤 일이 일어나고 있는지 확신 할 수 없습니다.
16:05:35.587 DEBUG: onStop: disconnecting clients. lq
(... 17 seconds elapse with no events related to the app)
16:05:52.292
java.lang.ClassCastException: com.google.android.gms.common.images.e cannot be cast to android.content.ComponentCallbacks
at android.app.Application.onConfigurationChanged(Application.java:91)
at android.app.ActivityThread.performConfigurationChanged(ActivityThread.java:3800)
at android.app.ActivityThread.handleConfigurationChanged(ActivityThread.java:3973)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1348)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
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:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)
18:00:46.230 WTF: errorNoNotify: Exception "main": java.lang.ClassCastException: com.google.android.gms.common.images.e cannot be cast to android.content.ComponentCallbacks android.app.Application.onLowMemory(Application.java:99) hm
java.lang.ClassCastException: com.google.android.gms.common.images.e cannot be cast to android.content.ComponentCallbacks
at android.app.Application.onLowMemory(Application.java:99)
at android.app.ActivityThread.handleLowMemory(ActivityThread.java:3690)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1233)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
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:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
at dalvik.system.NativeStart.main(Native Method)
기기 회전을 허용하고 있습니까? 내가 물어 보는 이유는 오리엔테이션 변경을 잘못 처리 할 때 캐스트 클래스 예외 (내 조각으로)를보고 있다는 것입니다. 귀하의 문제는 다릅니다 (그러나 유사하지는 않음). – IanB
@Sheldon 우리의 활동은 android : screenOrientation = "sensorLandscape"android : configChanges = "orientation"을 설정합니다. 우리의 활동 설정이 gplay 서비스의 조각에 영향을 미칠지 모르겠습니다. ImageManager를 사용하지 않을 때 크래시가 멈추었을 때 gplay가 방향 변경을 제대로 처리하지 못했을 때 관련되지 않았다고 생각할 수 있습니다. 그럼 다시 이상한 일 이네. :) – mwk