在应用程序中免费使用库依赖项中的OkHttp

时间:2017-02-24 15:57:51

标签: android noclassdeffounderror android-library okhttp okhttp3

几年前,我们开发了一个公开API的Android SDK。

当时我们使用的DefaultHttpClient和HttpResponse已经被弃用了! Volley,OkHttp和Retrofit似乎是处理网络需求的优雅解决方案,因此我使用gradle为我的.aar库添加了一个依赖项:

dependencies {
    compile 'com.squareup.okhttp3:okhttp:3.6.0'
}

这样做我希望将okhttp作为对我的库的依赖,但不是对将要使用它的应用程序。

事实上,似乎我错了,因为当我尝试将SDK与okhttp一起使用时,我的应用程序崩溃了,我明白了:

FATAL EXCEPTION: main
   Process: com.SDKExample, PID: 11977
   java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/OkHttpClient;
...

由于这个SDK被B2B客户使用,我真的不能要求他们在他们的应用程序中安装okhttp(这似乎是使整个工作正常的解决方案)。

有没有解决方案?

谢谢你们!

0 个答案:

没有答案