studio realtime notificaciones datos data android android-studio gradle build.gradle

android - realtime - Gradle no se pudo sincronizar con ''no se puede encontrar la biblioteca opcional''



realtime firebase android studio (9)

  1. Copie " sdk / Platform / android-23 / optional / org.apache.http.legacy.jar " en el directorio de aplicaciones del módulo libs, luego añádalo como biblioteca;
  2. Si habilita el programa, edite " proguard-rules.pro " para mantener las clases relacionadas o se producirá una excepción.

Tuve que reinstalar mi sistema y hoy recibo este error en Android Studio cuando intento sincronizar con gradle:

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

Mi proyecto gradle es:

buildscript { repositories { mavenCentral() } dependencies { classpath ''com.android.tools.build:gradle:1.3.0'' } } allprojects { repositories { mavenCentral() } }

Y mi módulo gradle:

apply plugin: ''android'' android { useLibrary ''org.apache.http.legacy'' compileSdkVersion 23 buildToolsVersion ''23.0.2'' defaultConfig { minSdkVersion 16 targetSdkVersion 23 } buildTypes { release { } } productFlavors { } } dependencies { compile fileTree(include: [''*.jar''], dir: ''libs'') compile ''com.android.support:support-v4:23.1.1'' compile ''com.android.support:appcompat-v7:23.1.1'' }

De los documentos de google :

Para continuar usando las API HTTP de Apache, primero debe declarar la siguiente dependencia de tiempo de compilación en su archivo build.gradle:

android { useLibrary ''org.apache.http.legacy'' }

Intenté las sugerencias mencionadas en este hilo pero no funcionan. Mismo resultado con Android Studio 1.5 y 2 de vista previa.

¿Cómo puedo arreglar esto?

Edit : Cosas que he probado hasta ahora:

  1. Cambie las versiones de gradle classpath a 1.3.0, 1.3.1, 1.5.0.

  2. Cambie compileSdkVersion y targetSdkVersion a 22. También buildToolsVersion de 23.0.1, 23.0.0, 22.0.1.


Actualice su proyecto de archivo gradle para usar la versión gradle 1.3.1.

classpath ''com.android.tools.build:gradle:1.3.1''

También intente agregar codehause repo.

repositories { mavenCentral() maven{ url ''http://repository.codehaus.org'' } }


Debe agregar el archivo jar org.apache.http.legacy.jar en la carpeta de aplicaciones / libs de su proyecto Android Stuido.

Jar Location - `<SDK LOCATION>/android-sdk/platforms/android-23/optional`

Para hacer esto, simplemente haga clic derecho en su proyecto y seleccione Show in Explorer luego vaya a .../app/libs y pegue el archivo jar anterior y Sincronice su proyecto con el archivo Gradle

Module:app

android { compileSdkVersion ''Google Inc.:Google APIs:23'' buildToolsVersion "24.0.0" defaultConfig { applicationId "<ur_app_id>" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' } } }


Después de mucho trabajar estas soluciones funcionan para mí. ** Studio / Android / sdk / platformas ** aquí, elimine su android-23 y, desde el administrador de sdk, actualice la API 23 de nuevo. **. Se solucionará su problema.


En mi caso, el problema realmente estaba ocurriendo porque no tenía el SDK correcto instalado en esa computadora. Navegando a .../Android/Sdk/platforms/android-23 pude ver que la carpeta estaba vacía. La adición del SDK 23 a través del administrador del SDK solucionó el problema y me permitió compilar.

Debería verificar manualmente que tiene instalada la misma versión del SDK que se especifica en compileSdkVersion en su archivo build.gradle.


En mi caso, no funcionó porque faltaba optional.json en el directorio <sdk-path>/platforms/android-23/optional/ , con el siguiente contenido:

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

Crear un nuevo archivo JSON con el contenido anterior solucionó el problema para mí.


Nivel superior build.gradle - /build.gradle

buildscript { ... dependencies { classpath ''com.android.tools.build:gradle:1.3.1'' } }

Módulo específico build.gradle - /app/build.gradle

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

Agregue org.apache.http.legacy.jar que se encuentra en la carpeta Android / Sdk / platform / android-23 / optional al directorio app / libs y sincronice su proyecto


Para ahorrar tiempo, 2 soluciones son mejores y funcionan para mí.

Solución 1:

abra su administrador de Android SDK y vuelva a instalar API 23 (eliminar e instalar de nuevo).

Solución 2:

Descargue este archivo que contiene el extracto de archivo optional.json y mueva opcional.json a:

C: / Users // AppData / Local / Android / sdk / platforms / android-23 / opcional


Si la solución anterior no funciona, intente de esta manera

Experimenté este problema recientemente, y se debe a la restricción de la longitud de la ruta. Creo que tiene un máximo de 256 caracteres.

Reubica tu proyecto y la construcción tendrá éxito.