How to use a library project in android studio

Viewed 37900

I have been trying to add this library project to my existing project in Android Studio. It's the first time I am going to use a library project and I am having tough time. I have looked around for many ways to do this from tutorials and posts around but couldn't get it done.

4 Answers

I'm not sure if it's already possible to add a library project via the IDE (-> without any problems). I do this by configuring the gradle files of my project like this:

  • create a folder in your root project directory named libs
  • copy the folder datetimepicker-library to libs
  • add this library in your settings.gradle with the following command:

    include ':libs:datetimepicker-library'
    
  • go to your build.gradle file of your AppProject and add the following line to your dependencies:

    implementation project(':libs:datetimepicker-library')
    
  • at least you have to sync your gradle files: Tools -> Android -> Sync Project with Gradle Files

Please try this. If you get errors please post the log file.

The problem with solutions listed above is that you will end up with a clone of the library project in the app using the library. This complicates making updates to the library because you need to remove and re-import the module when you make changes.

The solution I found can use the library project directly from outside folder and it does not clone the original library files.

The solution is easy...

In settings.gradle add the following lines:

include ':commonwidgets'
project (':commonwidgets').projectDir = new File(settingsDir, '../SharedWidgets/commonwidgets')

and in the build.gradle dependency section add:

implementation project(path: ':commonwidgets')

Note: commonwidgets is the name of my library, you should replace the name and path according to your library name and path.

I hope this helps someone...

I really would have liked to have the library import from GitHub bit I refuse to pay $9/month for jetpack for private libraries.

Related