Android NoSuchMethodError:java.io.IOException<;初始化>;使用Froyo版本的Google Play服务时出现异常
运行Android 2.2的我的应用程序的用户遇到应用程序崩溃。显示以下堆栈跟踪:Android NoSuchMethodError:java.io.IOException<;初始化>;使用Froyo版本的Google Play服务时出现异常,android,proguard,google-play-services,android-2.2-froyo,Android,Proguard,Google Play Services,Android 2.2 Froyo,运行Android 2.2的我的应用程序的用户遇到应用程序崩溃。显示以下堆栈跟踪: java.lang.NoSuchMethodError: java.io.IOException.<init> at com.google.android.gms.internal.ii.e(Unknown Source) at com.google.android.gms.internal.ii.b(Unknown Source) at com.google.android.gms.internal
java.lang.NoSuchMethodError: java.io.IOException.<init>
at com.google.android.gms.internal.ii.e(Unknown Source)
at com.google.android.gms.internal.ii.b(Unknown Source)
at com.google.android.gms.internal.hf.a(Unknown Source)
at com.google.android.gms.internal.hf.a(Unknown Source)
at com.google.android.gms.internal.cy.a(Unknown Source)
at com.google.android.gms.internal.eg.run(Unknown Source)
at com.google.android.gms.internal.ej.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
at java.lang.Thread.run(Thread.java:1102)
但这并不能解决问题:应用程序崩溃仍在Froyo设备上发生。我正在寻找解决方案(这可能是proguard的问题吗?)尝试将新的Google Play服务与froyo(第12版)一起使用。我发现了问题的原因:我在主应用程序中包含了正确版本的Google Play服务(3.2.65,仍然包含froyo支持),但包含了一个库项目(AAR)这取决于同一库(4.x)的更新版本。 将库项目更新为3.2.65后,库项目中的某些代码不再编译(AdView usages)。在解决编译错误、重建AAR并更新主应用程序以包含AAR的新版本之后,问题就解决了
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile 'com.google.android.gms:play-services:3.2.65'
...
}