¿Cómo agrego un proyecto de biblioteca (como Sherlock ABS) a Android Studio ?
(No para el antiguo paquete basado en ADT Eclipse, sino para el nuevo Android Studio ).
android
android-studio
android-library
Alexander Kulyakhtin
fuente
fuente
Gradle
, vea esta respuesta de StackOverflow .Respuestas:
Actualización para Android Studio 1.0
Desde que se lanzó Android Studio 1.0 (y muchas versiones entre v1.0 y una de las primeras desde el momento de mi respuesta anterior) algunas cosas han cambiado.
Mi descripción se centra en agregar proyectos de bibliotecas externas a mano a través de archivos Gradle (para comprender mejor el proceso). Si desea agregar una biblioteca a través del creador de Android Studio, simplemente verifique la respuesta a continuación con una guía visual (existen algunas diferencias entre Android Studio 1.0 y las de las capturas de pantalla, pero el proceso es muy similar).
Antes de comenzar a agregar una biblioteca a su proyecto a mano, considere agregar la dependencia externa. No afectará la estructura de tu proyecto. Casi todas las bibliotecas conocidas de Android están disponibles en un repositorio de Maven y su instalación solo requiere una línea de código en el
app/build.gradle
archivo:Agregar la biblioteca
Aquí está el proceso completo de agregar una biblioteca externa de Android a nuestro proyecto:
HelloWorld/
), cree una nueva carpeta:/libs
en la que colocaremos nuestras bibliotecas externas (este paso no es obligatorio, solo para mantener una estructura de proyecto más limpia)./libs
carpeta recién creada . En este ejemplo, utilicé la biblioteca PagerSlidingTabStrip (solo descargue ZIP de GitHub, cambie el nombre del directorio de la biblioteca a "PagerSlidingTabStrip" y cópielo). Aquí está la nueva estructura de nuestro proyecto:Edite settings.gradle agregando su biblioteca a
include
. Si usa una ruta personalizada como lo hice, también debe definir el directorio del proyecto para nuestra biblioteca. Un settings.gradle completo debería verse a continuación:5.1 Si enfrenta el error "Configuración predeterminada", intente esto en lugar del paso 5,
En
app/build.gradle
agregar nuestro proyecto de biblioteca como una dependencia:6.1. Si siguió el paso 5.1, siga esto en lugar de 6,
Si su proyecto de biblioteca no tiene
build.gradle
archivo, debe crearlo manualmente. Aquí hay un ejemplo de ese archivo:Además, puede crear una configuración global para su proyecto que contendrá versiones de SDK y versión de herramientas de compilación para cada módulo para mantener la coherencia. Solo edite el
gradle.properties
archivo y agregue líneas:Ahora puede usarlo en sus
build.gradle
archivos (en módulos de aplicaciones y bibliotecas) como a continuación:Eso es todo. Simplemente haga clic en sincronizar el proyecto con el icono de Gradle . Su biblioteca debería estar disponible en su proyecto.
Google I / O 2013: el nuevo Android SDK Build System es una excelente presentación sobre la creación de aplicaciones de Android con Gradle Build System: como dijo Xavier Ducrohet:
Al principio puede ser un poco confuso (especialmente para aquellos que trabajan con Eclipse y nunca han visto la hormiga, como yo;)), pero al final Gradle nos brinda grandes oportunidades y vale la pena aprender este sistema de construcción.
fuente
Global libraries
(# 10: "ahora ir a las bibliotecas globales")? Aparte de eso, funciona como se describe :) Muchas gracias. (Espero que Google lo haga, una tarea tan simple es tremendamente compleja en este momento)Aquí está la guía visual:
Actualización para Android Studio 0.8.2:
En Android Studio 0.8.2, vaya a Estructura del proyecto -> en Módulos, simplemente presione el botón más y seleccione Importar proyecto existente e importar
actionbarsherlock
. Luego sincronice sus archivos Gradle.Si te enfrentas al error
simplemente abra el
build.gradle
archivo en elactionbarsherlock
directorio y actualice elbuildToolsVersion
al sugerido.Archivo de menú -> Estructura del proyecto ... :
Módulo -> Módulo Importar
Después de importar el módulo de biblioteca, seleccione su módulo de proyecto y agregue la dependencia:
Y luego seleccione el módulo importado :
fuente
Select your project module and add dependency
dependencies { // ... compile project(':library') }
Use el menú Archivo -> Estructura del proyecto -> Módulos .
Empecé a usarlo hoy. Es un poco diferente
Para Sherlock, tal vez desee eliminar su directorio de prueba o agregar el
junit.jar
archivo al classpath.Para importar la biblioteca usando gradle, puede tener que agregarla a la
dependencies
sección de subuild.gradle
(la del módulo).P.ej
Android Studio está cambiando.
Existe una sección llamada "Configuración de módulo abierto" si hace clic derecho en una carpeta de módulo en la sección de proyecto de Android Studio (estoy usando la versión 0.2.10).
fuente
Modules
sección en laProject Structure
ventana.Consideraría la lectura necesaria de Dependencias, Bibliotecas de Android y Configuración de proyectos múltiples . Tómese unos minutos para hacerlo.
En particular, en el caso de un proyecto de biblioteca que no sea jar, lea el siguiente fragmento de la fuente anterior:
Tenga en cuenta que hubo poco o ningún uso de la GUI de Android Studio para que esto sucediera.
Actualmente estoy usando submódulos git para vincular la biblioteca anidada al repositorio git de la biblioteca real para evitar un desastre de dependencia.
fuente
Acabo de encontrar una manera más fácil (en lugar de escribir directamente en los archivos .gradle).
Esto es para Android Studio 1.1.0.
Archivo de menú -> Nuevo módulo ... :
Haga clic en "Importar proyecto existente".
Seleccione la biblioteca deseada y el módulo deseado.
Haga clic en finalizar. Android Studio importará la biblioteca a su proyecto. Se sincronizará archivos gradle.
Agregue el módulo importado a las dependencias de su proyecto.
Haga clic derecho en la carpeta de la aplicación -> Abrir configuración del módulo -> vaya a la pestaña de dependencias -> Haga clic en el botón '+' -> haga clic en Dependencia del módulo.
El módulo de la biblioteca se agregará a las dependencias del proyecto.
???
Lucro
fuente
La forma más fácil que encontré para incluir un proyecto de biblioteca externa es (por ejemplo, incluir una biblioteca de Facebook que se almacena en un directorio en la carpeta de dependencias):
En settings.gradle add
En la sección de dependencias build.gradle, agregue
Todo lo que queda por hacer es sincronizar el proyecto con los archivos gradle.
fuente
Una forma sencilla de agregar un archivo JAR como biblioteca a su proyecto de Android Studio:
a) Copie sus archivos * .jar
b) Pegue en el directorio libs debajo de sus proyectos:
c) Agregar a build.gradle:
b) Si su proyecto del ejemplo com.example.MYProject y las bibliotecas com.example.ScanAPI tiene el mismo espacio de nombres com.example , Android Studio verificará su compilación y creará todos los cambios necesarios en su proyecto. Después de eso, puede revisar esta configuración en el menú Archivo -> Estructura del proyecto .
c) Si su proyecto y sus bibliotecas tienen un espacio de nombres diferente , debe hacer clic derecho en la biblioteca y seleccionar la opción "Agregar como biblioteca" y seleccionar el tipo que necesita.
Recuerde que la opción "Estructura del proyecto" no está haciendo ningún cambio automático en "build.gradle" en la versión actual de Android Studio (0.2.3). Tal vez esta característica estará disponible en las próximas versiones.
fuente
Opción 1: colocar archivos en el directorio libs / del proyecto
El archivo build.gradle relevante se actualizará automáticamente.
Opción 2: Modificar el archivo build.gradle manualmente
Abra su archivo build.gradle y agregue una nueva regla de compilación al cierre de dependencias. Por ejemplo, si desea agregar Google Play Services, la sección de dependencias de su proyecto se vería así:
Opción 3: usar la interfaz de usuario de Android Studio
En el panel Proyecto, Controlhaga clic en el módulo al que desea agregar la dependencia y seleccione Abrir configuración del módulo.
Seleccione la pestaña Dependencias, seguido del botón + en la esquina inferior izquierda. Puede elegir de la siguiente lista de opciones:
Luego puede ingresar más información sobre la dependencia que desea agregar a su proyecto. Por ejemplo, si elige la dependencia de la biblioteca, Android Studio muestra una lista de bibliotecas entre las que puede elegir.
Una vez que haya agregado su dependencia, verifique su archivo build.gradle a nivel de módulo. Debería haberse actualizado automáticamente para incluir la nueva dependencia.
Fuente
fuente
Así es como me funciona en Android Studio 1.5+
En el proyecto donde desea agregar un proyecto de biblioteca externa, vaya al menú Archivo -> Nuevo -> * Importar nuevo módulo **, navegue al proyecto de biblioteca que desea agregar a su proyecto, seleccione para agregar el módulo 'biblioteca' en tu proyecto. Obtendrá settings.gradle en sus proyectos, junto a la aplicación, la biblioteca incluida, algo como esto:
Agregue build.gradle (Módulo: aplicación) en la sección de dependencias:
Compilar proyecto (': biblioteca')
Reconstruye el proyecto y listo.
* Puede agregar tantas bibliotecas (módulos) como desee. En ese caso, en settings.gradle tendrás:
Y en build.gradle, necesitarás tener:
fuente
Si necesita acceso a los recursos de un proyecto de biblioteca (como lo hace con ABS) asegúrese de agregar el proyecto / módulo de biblioteca como una "Dependencia del módulo" en lugar de una "Biblioteca".
fuente
Puedes hacer esto fácilmente. Vaya al menú Archivo -> Nuevo -> Módulo de importación ... :
Busque el directorio que contiene el módulo. Haga clic en Finalizar:
Vaya a Estructura del proyecto y agregue Dependencia del módulo :
Nota: Si recibe un error de SDK, actualícelo.
fuente
fuente
No es aconsejable editar las dependencias de la biblioteca a través de la GUI, ya que eso no escribe esos cambios en su archivo build.gradle. Entonces su proyecto no se construirá desde la línea de comandos. Deberíamos editar el archivo build.gradle directamente de la siguiente manera.
Por ejemplo, dado a la siguiente estructura:
Mi proyecto/
Podemos identificar tres proyectos. Gradle los referenciará con los siguientes nombres:
Es probable que el proyecto: app dependa de las bibliotecas, y esto se hace declarando las siguientes dependencias:
fuente
Para agregar a la respuesta: si el IDE no muestra ningún error, pero cuando intenta compilar, obtiene algo como:
Su proyecto de biblioteca probablemente se compila como un proyecto de aplicación. Para cambiar esto, vaya a:
Archivo de menú -> Estructura del proyecto -> Facetas -> [Nombre de la biblioteca] -> Marque "Módulo de la biblioteca".
fuente
Primera forma Esto está funcionando para MacBook.
Primero seleccione su archivo builder.gradle como pantalla dada:
Agregue dependencias como en la pantalla seleccionada:
Seleccione proyecto de sincronización.
Si recibe un error como "No se pudo encontrar el proyecto con la ruta ': firma-pad' en el proyecto ': aplicación'", utilice la segunda forma:
Seleccione el menú Archivo -> Nuevo -> Importar módulo ... :
Después de hacer clic en Importar módulo ,
dar la ruta de la biblioteca como mi ruta de MacBook:
Haz clic en Finalizar . Ahora se agregan su biblioteca.
fuente
Después de importar el Módulo ABS (desde Archivo> Estructura del proyecto) y asegurarme de que tiene Android 2.2 y Support Library v4 como dependencias, seguía recibiendo el siguiente error cuando usted @Alex
Agregué el módulo recién importado como una dependencia a mi módulo de aplicación principal y eso solucionó el problema.
fuente
Gradle: Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock.Light'.
. Parece que mi proyecto principal no ve los recursos del proyecto de biblioteca (ABS). Sin embargo, el IDE reconoce las referencias a clases y recursos. Captura de pantallaAndroid Studio 3.0
Simplemente agregue el nombre de la biblioteca al bloque de dependencias del archivo build.gradle de su aplicación .
Tenga en cuenta que debe usar en
implementation
lugar decompile
ahora. Esto es nuevo con Android Studio 3.0. Consulte estas preguntas y respuestas para obtener una explicación de la diferencia.fuente
com.android.tools.build:gradle:2.3.3
lugar de 3.0.0 en Android Studio 3 si desea continuar usando "compilar".Para resolver este problema, solo necesita agregar la ruta del recurso abs al archivo de compilación de su proyecto, tal como se muestra a continuación:
Entonces, nuevamente compilo sin ningún error.
fuente
Si usted tiene Android Studio .0.4.0, puede crear una nueva carpeta en su trayectoria de la estructura,
YourApp/libraries
. Copie el archivo JAR. Allí, haga clic derecho sobre él y "Agregar como biblioteca". Ahora tienes una ventana emergente. Simplemente seleccione su directorio y presione OK, y listo.fuente
Simplemente importe el proyecto de la biblioteca de Android como módulo y en Build.gradle .
Aplicar complemento: 'com.android.library'
Después de eso, sigue estos pasos:
fuente
https://www.dropbox.com/s/1e3eteu3h0pmkf7/Android%20studio%20_doc.doc?dl=0 es el enlace de Dropbox sobre cómo agregar un archivo JAR y un proyecto de biblioteca en la última versión de Android Studio 1.0.1.
Por favor, consulte la documentación con capturas de pantalla. Es muy fácil para un nuevo usuario.
fuente
Encontré la solución. Es tan simple. Siga las instrucciones de froger_mcs .
Asegúrese de hacer de la carpeta src una carpeta Fuente en Estructura del proyecto -> Módulos (Fuentes).
fuente
Básicamente, puede incluir sus archivos JAR de tres maneras diferentes. La última es la biblioteca remota que utiliza el depósito en línea https://bintray.com/ jcenter. Pero, si lo hace de una de las otras dos formas, el archivo JAR se incluirá físicamente en su proyecto. Lea este enlace https://stackoverflow.com/a/35369267/5475941 para obtener más información. En esta publicación, le expliqué cómo importar su archivo JAR en el estudio de Android y le expliqué todas las formas posibles.
En resumen, si es así (dirección local), se descargan y estos archivos JAR están físicamente en el proyecto:
Pero, si se trata de una dirección de Internet como esta, son bibliotecas remotas (parte bincey.com jcenter) y se utilizarán de forma remota:
Espero que ayude.
fuente
Abra el archivo de aplicación del módulo build gradle y agregue su dependencia. Si descarga la biblioteca, simplemente importe y compile como gradle.
De lo contrario, agregue repositorios en la aplicación del módulo de gradle lateral:
Los primeros repositorios descargarán la biblioteca por usted.
Y compile la biblioteca descargada:
Si está creando una biblioteca, solo necesita importar el proyecto como importar módulo nuevo.
fuente
Tenía una causa diferente del problema, así que para las personas:
cambie mavenCentral () a jcenter () y agregue
fuente
En Android Studio, vaya a la carpeta de aplicaciones internas y abra el archivo build.gradle. Aquí verá dependencias {}. Dentro de él puede agregar el proyecto de biblioteca y sincronizar. Ahora, después de sincronizar la biblioteca, se agregará a su proyecto y podrá usar sus funciones y clases en su proyecto.
fuente
Para Android Studio:
Haga clic en Build.gradle (módulo: aplicación) .
Y agregue para
y en su directorio "aplicación", cree un directorio, "libs". Agregue el archivo yourfile.jar:
Finalmente, compile los archivos de Gradle:
fuente
También encontré el mismo problema y luego hice lo siguiente.
Importo el proyecto de la biblioteca en mi AndroidStudio IDE como un módulo usando el menú Archivo -> Importar menús del módulo
Luego fui a mi módulo principal en el que quiero que el proyecto de la biblioteca sea un proyecto dependiente
Haga clic derecho en el módulo principal (en mi caso su nombre es aplicación ) -> abra la configuración del módulo -> vaya a la pestaña de dependencias -> haga clic en el botón + (lo obtendrá en el lado derecho de la ventana) -> haga clic en la dependencia del módulo - > seleccione su proyecto de biblioteca de la lista
Aplica los cambios y haz clic en el OKbotón.
Funcionó para mi. Espero que ayude a otros también.
fuente
Agregue esto en su archivo de construcción gradle:
fuente
De hecho, a medida que las versiones cambian, también cambia la interfaz de usuario y las opciones disponibles en el menú. Después de leer la mayoría de las respuestas a estas preguntas, tuve que adivinar qué funcionaría para Android Studio 1.1.0 .
Con el mouse, seleccione el proyecto en el nivel principal (aquí es donde muestra el nombre de su aplicación).
Haga clic derecho y seleccione las opciones de menú Nuevo, Carpeta, Carpeta de activos .
Después de crear la carpeta de activos, péguela o cópiela, sea cual sea el archivo JAR que necesite para su biblioteca.
Desde el menú principal de Android Studio (parte superior de la pantalla) seleccione Archivo -> Estructura del proyecto .
Luego seleccione el nombre de su proyecto y vaya a la pestaña Dependencias .
Haga clic en el signo más ( +) en la esquina inferior izquierda del cuadro de diálogo y seleccione la dependencia del archivo.
Finalmente, abra la carpeta de activos creada recientemente, seleccione los archivos JAR que copió y luego haga clic en aplicar y OK.
Limpia y reconstruye tu proyecto.
fuente