{ "id": "174699", "key": "TIMOB-27752", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "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": [ { "id": "20033", "name": "Release 9.0.0", "archived": false, "released": true, "releaseDate": "2020-03-18" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2020-02-13T23:51:32.000+0000", "created": "2020-02-07T02:45:18.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "android", "architecture", "build", "production", "x86", "x86_64" ], "versions": [], "issuelinks": [ { "id": "58291", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "174867", "key": "TIMOB-27828", "fields": { "summary": "Android app is not installing in certain devices in release format", "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": "None", "id": "6" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2020-03-30T13:59:54.000+0000", "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" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "*Summary:*\r\nWhen doing a \"production\" build, the {{x86}} and {{x86_64}} architectures should be excluded from the built Android app by default. That is, only ARM architectures should be included.\r\n\r\n*Note 1:*\r\nWe have been excluding {{x86}} from \"production\" builds since Titanium 7.0.0. We want to maintain this behavior in Titanium 9.0.0's gradle builds and exclude {{x86_64}} as well. These architectures are mostly needed for testing purposes in the Android emulator. Removing these architectures can reduce the APK size by a significant amount. Also, physical Android device that support {{x86}} are extremely rare.\r\n\r\n*Note 2:*\r\nModules built with Titanium 8.x.x and older do not support the {{x86_64}} architecture. Only modules built with Titanium 9.0.0 and higher support {{x86_64}}. When you include a module that does *+NOT+* support {{x86_64}} into a Titanium 9.0.0 or newer app, then the build system will strip out all {{x86_64}} architectures from the app. It's all or nothing, otherwise a crash will occur on an {{x84_64}} device/emulator. This means if you want your app to support {{x86_64}}, then all modules must be built with Titanium 9.0.0 or higher.\r\n\r\n*How to Override:*\r\nYou can override this behavior and specify which architectures you want to include in the build by adding the following {{}} entry in the \"tiapp.xml\" file.\r\n{code:xml}\r\n\r\n\t\r\n\t\tarmeabi-v7a,arm64-v8a,x86,x86_64\r\n\t\r\n\r\n{code}\r\n", "attachment": [], "flagged": false, "summary": "Android: Exclude x86 and x86_64 architectures in \"production\" builds by default", "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, "closedSprints": [ { "id": 1179, "state": "closed", "name": "2020 Sprint 3", "startDate": "2020-02-03T16:58:00.000Z", "endDate": "2020-02-14T16:58:00.000Z", "completeDate": "2020-02-17T09:45:06.128Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "454109", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/11466\r\n", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-02-07T03:04:53.000+0000", "updated": "2020-02-07T03:04:53.000+0000" }, { "id": "454161", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed.\r\n1. When performing a test/development build of a mobile project the apk generated includes all four architectures (arm64-v8a, armeabi-v7a, x86, x86_64)\r\n2. When performing a production build of a mobile project the apk generated has arm64-v8a, armeabi-v7a architectures.\r\n3. When performing a production build of a mobile project and including information for all 4abi's in Tiapp.xml the apk generated includes all four architectures.\r\n4. When the mobile project uses any module that uses SDK prior to 9.0 then the test/development/production build for the mobile project excludes the x86_64 architecture. Also a warning message is logged in the build logs.", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-02-10T22:22:04.000+0000", "updated": "2020-02-10T22:22:04.000+0000" }, { "id": "454162", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Waiting on Jenkins build", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-02-10T22:22:21.000+0000", "updated": "2020-02-10T22:22:21.000+0000" }, { "id": "454274", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified on:\r\nMac OS: 10.15.1\r\nSDK: 9.0.0.v20200212155006\r\nAppc CLI: 8.0.0-master.6\r\nJDK: 11.0.4\r\nNode: 10.16.3", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-02-13T23:51:32.000+0000", "updated": "2020-02-13T23:51:32.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }