Cree una biblioteca de Jar Android para su distribución

Conozco los proyectos de la Biblioteca de Android, que permiten crear un proyecto de fuente compartida que se puede insertar en las Aplicaciones de Android según sea necesario. Sin embargo, eso requiere que la fuente esté disponible.

Estoy buscando una manera de construir y distribuir una biblioteca de código cerrado que se puede utilizar en otros proyectos de Android como un JAR tradicional. Esto requerirá el uso del compilador de Android, por lo que no es un archivo Java JAR de vainilla. FWIW, no necesito incorporar recursos / layouts en el JAR.

He visto http://andparcel.com/ pero se siente como una solución, y prefiero usar algo "oficialmente admitido" por Google. Además, tengo que asegurarse de que el JAR I construir es compatible con la versión antigua / nueva del SDK de Android (es decir, necesito una manera de establecer la versión de plataforma de destino, etc).

¿Los últimos juegos de herramientas de Android permiten la creación / consumo de binarios JAR? ¿Puedes señalar alguna documentación sobre cómo puedo hacerlo?

Si crea un proyecto de la Biblioteca de Android sin tener recursos, el ADT (primero notado en r16) creará un .jar con el mismo nombre que el proyecto en la carpeta 'bin'.

Android no proporciona un tipo especial de Android JAR. Pero lo que puedes hacer es agregar un build.xml a tu proyecto y construir el JAR con ant.

Mi build.xml se ve así:

 <project name="MyAndroidLib" default="dist" basedir="."> <description> This is my Android lib </description> <!-- set global properties for this build --> <property name="src" location="src" /> <property name="bin" location="bin" /> <target name="jar"> <jar destfile="MyAndroidLib.jar" basedir="bin/classes/"> <!-- replace 'com' by what ever you are using --> <!-- as first part of the package name --> <!-- eg de, org, ... --> <!-- the ** is important to include the directory recursively --> <include name="com/**" /> </jar> </target> </project> 

Construya el JAR ejecutando ant jar en su carpeta principal de proyectos.

Usted puede crear un proyecto "regular" de Java e importar desde allí Android.jar. A continuación, tendrá acceso a todos los componentes del SDK. A continuación, puede exportar su proyecto como jar … y cargarlo desde su aplicación de Android. Esto funciona muy bien y parece una manera sencilla preety para hacerlo.

Sólo tienes que ir a las propiedades del proyecto del que desea hacer jar.Haga clic en la pestaña de Android. Y marque en la biblioteca Is. Ahora puedes ver el archivo .jar en la carpeta bin.usúralo donde quieras usar.

La única solución 'oficialmente admitida' por Google es el proyecto Biblioteca y requiere que se distribuya el código fuente. Puede crear un JAR de la forma normal, pero no puede incluir o referenciar recursos dentro de él.

Desafortunadamente, creo que tampoco es posible incluir un JAR empaquetado dentro de un proyecto de biblioteca, como un medio para evitar el requisito de código fuente.

Prueba esto: Esto funciona

1) hacer que su proyecto de biblioteca sea un proyecto normal al anular la selección de la bandera IsLibrary.

2) Ejecutar su proyecto como aplicación Android. (No mostrará ningún error)

3) encontrará un archivo .jar en la carpeta bin junto con .apk.

4) Darle .jar que desee utilizar su biblioteca.

5) Dígales que sólo importen jar externo en la ruta de construcción.

Esto funcionará bien con todos los recursos. la mejor de las suertes.

En la última versión de Android Studio 1.2, la creación de la biblioteca JAR se ha hecho tan simple como apuntar y hacer clic.

Pasos a seguir :

  • Ir al archivo -> Nuevo -> Nuevo módulo Introduzca aquí la descripción de la imagen
  • Seleccione "Biblioteca Java" al final de la lista de opciones Introduzca aquí la descripción de la imagen
  • Introduzca el nombre del jar lib y el nombre de la clase en él y pulse el botón finish Introduzca aquí la descripción de la imagen
  • Eso es !

El siguiente paso es agregar la biblioteca de Jar como dependencia en la aplicación. Tan simple como eso

  • Ir a Archivo -> Estructura del proyecto -> Seleccionar 'aplicación' -> Seleccionar 'Dependencia'
  • Seleccione el '+' en la parte inferior -> Seleccione 'Dependencia del módulo' Introduzca aquí la descripción de la imagen
  • Seleccione su módulo jar lib que acaba de crear arriba Introduzca aquí la descripción de la imagenIntroduzca aquí la descripción de la imagen
  • Seleccione Ok y eso es todo!

…. O usted podría apenas agregar la línea abajo a su archivo gradle de la aplicación

 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) // Default Gradle Task, should be already present compile 'com.android.support:appcompat-v7:21.0.3' // Default Gradle Task, should be already present compile project(':nameOfYourJarLibraryModule') // This is your jar library module } 

Google está promoviendo el Archivo de Android (AAR), aunque JAR soportado se trae de vuelta a android studio.To averiguar la diferencia entre AAR y JAR referirse a este enlace

El ADT crea una carpeta bin que contiene todos los archivos de clase para todos los archivos de origen y directorios coincidentes en su proyecto, puede usar el comando jar, crear un archivo jar que contenga estos archivos de clase y directorios y presumible su biblioteca, El nivel de la plataforma de archivos de clase sólo se direccionaría para el nivel actual de la construcción del proyecto; necesitaría un archivo jar diferente para cada nivel de plataforma; Sin embargo, lo bueno de esto es que el archivo R.class se incluye en el árbol del directorio del proyecto y por lo tanto tiene acceso a sus recursos. No sé si esta es la forma oficial de hacer las cosas en android, pero funcionó para mí.

En nuestro proyecto, estamos creando apk (usando apkbuilder) que está instalado en / system / framework y agregó este apk en classpath por defecto. Para la compilación de aplicaciones usando el tarro, estamos creando un archivo jar (usando jar c).

Nota: No tenemos ningún recurso en la biblioteca.

.jar es sólo un archivo .zip que contiene el archivo .class (puedes intentar cambiar la extensión de cualquier archivo .jar a .zip luego ver el resultado). Fácilmente, puede crear cualquier biblioteca .jar para cualquier propósito, comprimiendo el archivo .class.

Abrir archivo project.properties ingresar valor android.library = true

Guardar el archivo, desde el menú de eclipse para el proyecto, seleccione "crear automáticamente" y luego seleccionar "limpia" nuevo frasco se crea bajo bin

  • Android Proguard saltar el frasco externo
  • Cómo obtener el archivo JAR para la clase sun.misc.BASE64Encoder?
  • Cómo quitar el archivo de clase en archivo .jar y cambiarlo con mi propia implementación
  • Cómo crear 2 jarras para pro y lite con el mismo nombre en andorid / eclipse
  • Utilice ya desarrollado el proyecto android en otro proyecto directamente como archivo .xyz
  • Cómo generar un archivo jar para un proyecto java y usar el jar en un proyecto android
  • Crear jar para el proyecto androide en eclipse
  • ¿Se incluyen métodos no referenciados en el ejecutable final?
  • Android no puede encontrar la clase de la jarra externa
  • ¿Es posible incluir el diseño y otros recursos en un tarro de Android?
  • ¿Dónde está la carpeta lib de la aplicación de Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.