androidandroid-studioimport-module

How to update an imported module in Android Studio?


While I develop an Android App, I have a library which I have created as separate Android Studio project and can use it by inserting it into new projects. I insert the library by choosing 'File|New|Import Module...' option.

The thing is that after the import, Gradle creates a hard copy of my library. If I change the library code in main external project, the code inside the project which is using the library won't get updated.

How can I have a library and share it among many project? I need to change the library in one single place and then all other projects which are using it get the update.

I found this post also which has no answer:

How to update imported modules with code modification from the their external library project in Gradle/Android Studio


Solution

  • OK I found the answer by myself:

    You must not add the external library as an existing module. It will make a copy of it under your project folder.

    What you have to do is:

    1. Delete the library folder in your current project. (You can also delete the ./idea/modules/[module_name] folder.)
    2. Open the setting.gradle file and add these:
    include ':your_external_library_module_name'
    project (':your_external_library_module_name').projectDir = new File('../path/to/your/external/library')
    
    include ':perhaps_second_external_library'
    project (':perhaps_second_external_library').projectDir = new File('../path/to/your/second/external/library')
    
    1. In your build.gradle (:app) file add dependency as:
    dependencies {
        implementation project(':your_external_library_module_name')
        implementation project(':perhaps_second_external_library')
    }
    
    1. Sync the project and you are done.