无法导入com.squareup.okhttp.OkHttpClient;

时间:2016-01-20 08:53:02

标签: android gradle okhttp

我正在研究android studio并从网上获取一些数据。我尝试使用can't resolve symbol okhttp并将jar添加到我的项目文件夹中,但仍然无法导入它。

显示apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.0" defaultConfig { applicationId "com.example.app" minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.0' compile 'com.google.android.gms:play-services:8.4.0' // compile files('libs/okhttp-3.0.1.jar') // compile files('libs/okio-1.6.0.jar') } 。 我尝试了一些解决方案,但无法解决问题。这是我的 build.gradle文件

for ele in doc.iter('ul'):
    if len(ele.findall('.//a')) / len(ele.findall('.//li')) >= 2:
        ele.drop_tree()

7 个答案:

答案 0 :(得分:27)

Gradle应该有这样的一行

compile 'com.squareup.okhttp3:okhttp:3.0.1' // or implementation depending on gradle version

这就是你导入它的方式

import okhttp3.OkHttpClient;

由于OkHttpClient已在上一版本中从包com.squareup.okhttp移至okhttp3

更多详细信息包括herehere

答案 1 :(得分:2)

您需要添加以下库:

compile 'com.squareup.okhttp:okhttp:2.2.0'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'

答案 2 :(得分:1)

让gradle句柄下载并导入:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.squareup.okhttp3:okhttp:3.0.1'
}

答案 3 :(得分:0)

我看到你正在尝试使用手动放入libs文件夹的jar进行编译。这是否有原因(例如您需要特定版本的库等)?如果您没有注意到,这些行已被注释掉 - 这意味着它们将不会被处理,因此不会添加到您的应用程序中。

可能的解决方案:

  1. 取消注释行
  2. 请尝试将其添加到dependencies

    compile 'com.squareup.okhttp3:okhttp:3.0.1'
    
  3. 您可以在

    下添加
    compile 'com.google.android.gms:play-services:8.4.0'
    

    来源:https://github.com/square/okhttp

答案 4 :(得分:0)

android {
    compileSdkVersion 25
    buildToolsVersion '25.0.2'
    useLibrary  'org.apache.http.legacy'
    ...
}

dependencies {
...
compile 'com.squareup.okhttp3:okhttp:3.4.1'

}

并将导入从com.squareup.okhttp.OkHttpClient 更改为

import okhttp3.OkHttpClient;

答案 5 :(得分:0)

使用它的最新版本!

就我而言,尝试了所有可能性,但在更新到最新版本后,问题已解决。

implementation 'com.squareup.okhttp3:okhttp:4.9.0'

答案 6 :(得分:0)

在 build.gradle 中导入为 api,例如

dependencies {
api 'com.squareup.okhttp3:okhttp:3.11.0'

请参阅此注释 https://github.com/dropbox/dropbox-sdk-java#when-i-use-okhttp3requestor-in-dbxrequestconfig-i-get-errors-like-class-file-for-okhttp3okhttpclient-not-found