我想为Android P构建一个使用Apache HTTP客户端的项目。 据我了解,有两种方法可以做到这一点:
首先通过AndroidManifest.xml:
<application
...
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
</application>
第二次通过build.gradle:
android {
useLibrary 'org.apache.http.legacy'
}
这些方法等效吗?
为什么构建gradle中的android.useLibrary命令不会在AndroidManifest.xml中添加uses-library标签?
答案 0 :(得分:0)
扩展CommonsWare的评论。
使用gradle依赖项来使用apache http客户端,不要修改android manifest.xml。
将build.gradle修改为
dependencies {
implementation 'org.apache.httpcomponents:httpclient-android:4.3.5.1'
}
答案 1 :(得分:0)
将此添加到AndroidManifest.xml时应在运行时通知Android这些类存在:
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
参考:specify_requirement_for_apache_http_legacy_library
build.gradle声明确保该库在编译时可用。
useLibrary 'org.apache.http.legacy'