Adding a library/JAR to an Eclipse Android project Adding a library/JAR to an Eclipse Android project android android

Adding a library/JAR to an Eclipse Android project


Now for the missing class problem.

I'm an Eclipse Java EE developer and have been in the habit for many years of adding third-party libraries via the "User Library" mechanism in Build Path. Of course, there are at least 3 ways to add a third-party library, the one I use is the most elegant, in my humble opinion.

This will not work, however, for Android, whose Dalvik "JVM" cannot handle an ordinary Java-compiled class, but must have it converted to a special format. This does not happen when you add a library in the way I'm wont to do it.

Instead, follow the (widely available) instructions for importing the third-party library, then adding it using Build Path (which makes it known to Eclipse for compilation purposes). Here is the step-by-step:

  1. Download the library to your hostdevelopment system.
  2. Create a new folder, libs, inyour Eclipse/Android project.
  3. Right-click libs and chooseImport -> General -> File System,then Next, Browse in the filesystemto find the library's parentdirectory (i.e.: where youdownloaded it to).
  4. Click OK, then click thedirectory name (not the checkbox) inthe left pane, then check therelevant JAR in the right pane. Thisputs the library into your project(physically).
  5. Right-click on your project,choose Build Path -> Configure BuildPath, then click the Libraries tab,then Add JARs..., navigate to yournew JAR in the libs directory andadd it. (This, incidentally, is the moment at which your new JAR is converted for use on Android.)

NOTE

Step 5 may not be needed, if the lib is already included in your build path. Just ensure that its existence first before adding it.

What you've done here accomplishes two things:

  1. Includes a Dalvik-converted JARin your Android project.
  2. Makes Java definitions availableto Eclipse in order to find thethird-party classes when developing (that is, compiling) your project's source code.


Ensure that your 3rd party jars are in your projects "libs" folder and they will be put in the .apk when you package your application. You may see runtime errors on the device if something in the jar is not supported, but other than that I have had great success with this.


Setting up a Library Project

A library project is a standard Android project, so you can create a new one in the same way as you would a new application project.

When you are creating the library project, you can select any application name, package, and set other fields as needed, as shown in figure 1.

Next, set the project's properties to indicate that it is a library project:

In the Package Explorer, right-click the library project and select Properties.In the Properties window, select the "Android" properties group at left and locate the Library properties at right.Select the "is Library" checkbox and click Apply.Click OK to close the Properties window.The new project is now marked as a library project. You can begin moving source code and resources into it, as described in the sections below.