您的位置:首页 > 理论基础 > 计算机网络

[原创]在使用SDK 23(6.0)版本后org.apache.http相关的类找不到的解决办法

2016-04-18 16:38 633 查看
参考:
http://stackoverflow.com/questions/32153318/httpclient-wont-import-in-android-studio
http://www.zhihu.com/question/35597452/answer/63619567
http://stackoverflow.com/questions/33898857/why-warningunable-to-find-optional-library-org-apache-http-legacy-occurs

1. 在Android模块里面添加
android {
useLibrary 'org.apache.http.legacy'
}

这个对我不起作用,依然提示 不识别 org.apache.http.legacy

更新:发现在 SDK/platforms/android-23/optional 下面其实是有org.apache.http.legacy这个文件的。在这个目录下新建 optional.json, 内容如下:
==========
[ { "name": "org.apache.http.legacy", "jar": "org.apache.http.legacy.jar", "manifest": false } ]
===========
然后这个方法生效。(谁动了我的optional.json ?!)

2. 在Dependency中添加:
dependencies {
compile 'org.apache.httpcomponents:httpcore:4.4.2'
}

这个亲测有效!! ^_^

3. 在Dependency中添加:
compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'

没有测试,估计有效。看别人的回复:

You can simply add this to Gradle dependencies:

compile "org.apache.httpcomponents:httpcore:4.3.2"


========================
This helps. But still not enough if you want to use other classes like
HttpGet
. For that I used
compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.cli‌​ent:4.1.2'
AlexAndro Oct 5 '15 at 9:10

在Dependency中添加以后, Gradle会自动从server下载所需要的依赖。好神奇。。。似乎是下载到了SDK的目录?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: