{ "id": "174266", "key": "TIMOB-27477", "fields": { "issuetype": { "id": "6", "description": "gh.issue.epic.desc", "name": "Epic", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2019-10-17T00:13:31.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "2020Q1", "android", "build", "gradle", "modules" ], "versions": [], "issuelinks": [ { "id": "57865", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "174139", "key": "TIMOB-27405", "fields": { "summary": "Android: Refactor code generation for kroll annotations to not directly link to V8", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } }, { "id": "57864", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "150052", "key": "TIMOB-19300", "fields": { "summary": "Android: Change to use Gradle instead of Ant for build", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "Critical", "id": "1" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } }, { "id": "57870", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "174277", "key": "TIMOB-27487", "fields": { "summary": "Android: Build x86_64 module libraries", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2020-01-28T22:54:58.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "*Summary:*\r\nIn Titanium 9.0.0, we are changing our app/module build system to use \"gradle\". This build system allows us to do the following with modules:\r\n* Build modules as {{\\*.aar}} files. _(Self contained file containing all {{\\*.jar}}/{{\\*.so}} libraries, res files, AndroidManifest.xml, etc. that gradle can automatically merge into app for us.)_\r\n* Provide a {{*.pom}} XML file declaring all library dependencies the module uses. _(This solves dependency version conflicts for us, but only if all other modules do the same.)_\r\n* Improve build times and reduces module release size. _(Dependencies are no longer bundled within module release zip and are instead downloaded via gradle/maven.)_\r\n\r\nIn particular, we want to solve the library dependency version conflicts that has been known to happen. This frequently happens when we update our \"ti.playservices\" libraries. We can only solve this problem if all *+native+* modules opt-in to using gradle and define their dependencies via a \"build.gradle\" file (ie: must agree to using same version management system).\r\n", "attachment": [], "flagged": false, "summary": "Android: Rebuild all native modules with gradle", "creator": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [], "maxResults": 0, "total": 0, "startAt": 0 } } }