Uploaded image for project: 'Titanium SDK/CLI'
  1. Titanium SDK/CLI
  2. TIMOB-27758

Android: Modules with AARs in "lib" directory should trigger a build failure in 9.0.0

    Details

    • Story Points:
      5

      Description

      Summary:
      The Android gradle build system allows a library project to reference a local AAR for compilation, but it won't merge the local AAR's classes, "AndroidManifest.xml", assets, or "res" files into the library project's built AAR. This is intentional on Google's end. The build system will only merge all of the AAR files' content into an app project.

      Because of the above, a native module referencing local AAR files will crash at runtime when built with Titanium 9.0.0 and gradle. It will compile fine, but the classes in the AARs will not be included in the module; nor the app.

      Solution:
      When building a native Android module with Titanium, the CLI should trigger a build failure if the module's "lib" directory contains any AAR files and should tell the developer to reference AAR libraries via the "build.gradle" file instead.

      Note:
      This is a breaking-change. But by doing this, we force module developers to reference dependencies the gradle/maven way, which will solve library version conflict issues between modules.

        Attachments

          Activity

            People

            • Assignee:
              jquick Joshua Quick
              Reporter:
              jquick Joshua Quick
              Reviewer:
              Gary Mathews
              Tester:
              Lokesh Choudhary
            • Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Backbone Issue Sync

                • Backbone Issue Sync is enabled for your project, but we do not have any synchronization info for this issue.

                  Git Integration