AAR in Eclipse ANT project

不问归期 提交于 2019-11-26 16:15:40

问题


is there any way to use .aar library (with resources) in eclipse ant project? I know that there is no simply way to use .aar format like in gradle, but maybe there is some workaround to unzip it and import it manually?


回答1:


This solution was helpful for me

EDIT: A .aar file is simply a zip file with the following contents:

  1. AndroidManifest.xml (Required file)
  2. classes.jar (required file)
  3. Res / (compulsory folder)
  4. R.txt (Required file)
  5. Assets / (Optional folder)
  6. libs/*.jar (folder option)
  7. jni//*.so (optional folder)
  8. proguard.txt (optional file)
  9. lint.jar (optional file)

You see, within the .aar file you have everything you need to operate the library in eclipse.

to create library:

  1. CREATE a new project (hereafter library project ) to your workspace. Do not forget to mark it as a library.
  2. Leave empty src folder library project .
  3. .aar Decompresses the file. You can rename it to .zip and unzip or use any tools.
  4. Copy the file classes.jar into the libs file folder library project .
  5. Res folder replaces the library project with .aar res file folder.
  6. You've created the project that contains almost everything you need.

Now let's see how to configure your project to reference the library project.

  1. In the project you want to use the library (henceforth, project goal ) added as the dependency library project .
  2. Open AndroidManifest.xml .aar within the file and make sure to copy everything it takes (permits, activities, services, receivers ...) in the file AndroidManifest.xml project objective .
  3. If there is, copy the entire contents of the folder assets .aar file in the assets folder target project .
  4. If there is, copy the entire contents of the file .aar libs folder in folder libs target project .

  5. Make a Clean the workspace and recompiled.

http://www.iphonedroid.com/blog/utilizar-ficheros-aar-en-eclipse/#.Vh3krye1Gko




回答2:


Indeed, aar files are just archive files. So you can unzip it and find jar files along with ressources files. The question have already been partially answered here:

https://stackoverflow.com/a/21485222/1836870

If you want to get the ressources inside your jar, you could try repackage like it's suggested in this answer:

https://stackoverflow.com/a/21417599/1836870




回答3:


The brunt of the work can be done by a wonderful script called deaar. The gist explains things, but basically you run:

ruby deaar.rb [path/to/aar] [output_directory] 

It outputs an almost ready to use library. Next, you need to run:

cd [output_directory]
android update lib-project -p . -t android-xx 

Replace xx with the Android version you're targeting. Now put that directory where your build.xml and project.properties are. Finally, add a line like this to your project.properties:

android.library.reference.1=./output_directory 

Replace the directory name with the one you created. You can use ".2" and so on for additional libraries. And that's it!




回答4:


Twitter Fabric(Crashlytics) has a kits-libs plugin for dependencies management http://docs.fabric.io/android/fabric/eclipse.html.

And there's another gradle plugin project https://github.com/ksoichiro/gradle-eclipse-aar-plugin.



来源:https://stackoverflow.com/questions/23777423/aar-in-eclipse-ant-project

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!