I wanted to consolidate some Java classes into a common library so that it can be shared among Android projects. A Java archive file (*.jar) is a typical container for this purpose. Android Studio can generate and use a Java archive (Jar) file containing commonly used classes and resources. But since we are using Android Studio, an Android project must be created first, then a Jar module can then be created and added. The following steps illustrate the process in creating a Jar file.
Generating a Java archive (*.jar) file
- Start up Android Studio.
- Select Start a new Android Studio project.
- Type in an Application name and a Company Domain. Select a Project location. Click Next.
- Choose a Minimum SDK, e.g. API 14. Click Next.
- Select Add No Activity. Click Finish.
The Android project is created.
- Select File | New | New Module.
- Select Java library.
- In the Library name field, type in the name of the library e.g. libDijkstra. In the Java class name field, type in the name of the class e.g. MyClass. Press Enter.
The library is created.
- Type in the classes and methods of the library in the editor e.g. printHello method in the MyClass.java file.
- In the Project tree view, select the newly created module node, e.g. libdijkstra. Then open the Gradle projects pane on the right side. Expand the Tasks node, as shown below.
- Double click on build.
- In Android Studio, create a new project or open up an existing project e.g.MyApplication that you want to use the Java archive file library.
- In the Project view, expand the libs node of your app, as shown below.
- Using the Windows Explorer, select and copy the Java archive file (*.jar) e.g.libdijkstra.jar. In Android Studio, right click on the libs folder of the app. Paste the Jar file.
- If necessary, change the name. Click OK.
The Jar file is added to the project.
- Select File | Project Structure.
- Select app. On the right side, click the plus +.
- Browse and select the Java archive file e.g. libdijkstra.jar. Click OK.