Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why Warning:Unable to find optional library: org.apache.http.legacy occurs?

My gradle file:

apply plugin: 'com.android.application' 

android { 
  useLibrary 'org.apache.http.legacy' 
  compileSdkVersion 23 
  buildToolsVersion "23.0.0" 

  defaultConfig { 
    applicationId "com.skripsi.irwanto.paud" 
    minSdkVersion 15 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
  } 

  buildTypes { 
    release { 
      minifyEnabled false 
      proguardFiles getDefaultProauardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
  } 
} 
dependencies { 
 compile fileTree(include: ['*.jar'], dir: 'libs') 
 testCompile 'junit:junit:4.12' 
 compile 'com.android.support:appcompat-v7:23.1.11 
} 

And I get Warning:Unable to find optional library: org.apache.http.legacy

like image 565
irwan Avatar asked Nov 24 '15 16:11

irwan


2 Answers

I guess, the easier way to solve this issue without having to reinstall the SDK is to create a file called optional.json in <sdk-path>\platforms\android-23\optional\ directory with the following content:

[
  {
    "name": "org.apache.http.legacy",
    "jar": "org.apache.http.legacy.jar",
    "manifest": false
  }
]

It solved the problem for me.


EDIT: Information taken from @domoch's answer below on how to locate your SDK location

To Locate your Android SDK's Location

Go to Android Studio Settings -> Appearence & Behavior -> System Settings and look for Android SDK Location. In Windows, it usually would be pointing to C:\Users\<username>\AppData\Local\Android\sdk.

like image 80
Vite Falcon Avatar answered Nov 13 '22 07:11

Vite Falcon


I had exactly the same issue. Please check if you have android-sdk-windows\platforms\android-23\optional\optional.json file in place. If not then just reinstall API 23 (remove and install again).

like image 27
pratt Avatar answered Nov 13 '22 07:11

pratt