Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- - app
- > references library1, library2
- - library1
- - library2
- > references library3
- - library3
- dependencies {
- implementation project(":library1")
- implementation project(":library2")
- }
- dependencies {
- //for debug build just use the local project
- debugImplementation project(":library1")
- debugImplementation project(":library2")
- //for release build use manually added aar in libs folder
- releaseImplementation (name: 'library1-release', ext: 'aar')
- releaseImplementation (name: 'library2-release', ext: 'aar')
- //i need to add library3 too otherwise it will not find
- //method referenced there because aar are not bundled togheter
- //by default
- releaseImplementation (name: 'library3-release', ext: 'aar')
- }
- //move from scripts folder to root project folder
- cd "$(dirname "$BASH_SOURCE")/../../"
- //assembleRelease all the aar (which enables Proguard obfuscation)
- ./gradlew clean assembleRelease --info &&
- //copy them in the app libs folder
- cp -rf library1/build/outputs/aar/library1-release.aar app/libs/library1-release.aar
- cp -rf library2/build/outputs/aar/library2-release.aar app/libs/library2-release.aar
- cp -rf library3/build/outputs/aar/library3-release.aar app/libs/library3-release.aar
- applicationVariants.all { variant ->
- if (variant.buildType.name == "release") {
- variant.preBuildProvider.configure {
- dependsOn(buildReleaseAar)
- }
- }
- }
- task buildReleaseAar {
- dependsOn (
- ':library1:assembleRelease',
- ':library2:assembleRelease',
- ':library3:assembleRelease'
- )
- doLast {
- //copy the aars from build folders in app/libs folder
- }
- }
- configurations {
- releaseObfuscatedAar
- }
- dependencies {
- //other implementations libs
- //for debug build just use the local project
- debugImplementation project(":library1")
- debugImplementation project(":library2")
- releaseObfuscatedAar('library1')
- releaseObfuscatedAar('library2')
- releaseObfuscatedAar('library3')
- }
- //and some other task that build the aar before checking if
- //dependency is present
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement