Android 6.0发布后,将删除对Apache HTTP客户端的支持.如果我们的应用程序使用此客户端并且目标是Android 2.3(API级别9)或更高级别,则建议使用HttpURLConnection类.据说这个API更有效,因为它通过透明压缩和响应缓存减少了网络使用,并最大限度地降低了功耗.如果我们想继续使用Apache HTTP API,则必须首先在build.gradle文件中声明以下编译时依赖项:
android {
useLibrary 'org.apache.http.legacy'
}
传统jar在Android SDK中,其路径为sdk / platforms / android-23 / optional /.所以,它几乎是独立的.同时,这个apache传统jar被推入了可选/在Android SDK中,那么什么是可选的?那是什么意思?
我们也知道,我们可以将这个jar放入libs,然后在我们的build.gradle文件中声明它,如下所示:
dependencies {
compile files('libs/org.apache.http.legacy.jar')
}
当我测试时,两种方法都按预期工作.
但我为什么徘徊.
build.gradle中useLibrary和编译文件(”)之间有什么区别?只是因为传统的jar文件在android SDK中,所以我可以在build.gradle中声明useLibrary来使用它吗?我可以用这种方式使用其他罐子吗?
我很迷惑.有人可以就此提供一些想法吗?提前致谢.