{ "id": "85703", "key": "TIMOB-7472", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "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": "12095", "description": "", "name": "Sprint 2012-03", "archived": true, "released": true, "releaseDate": "2012-02-12" }, { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" }, { "id": "13070", "description": "Release 1.8 Service Pack 2", "name": "Release 1.8.2", "archived": true, "released": true, "releaseDate": "2012-02-29" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-02-14T23:29:05.000+0000", "created": "2012-01-30T12:56:36.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "module_build", "qe-testadded" ], "versions": [ { "id": "12580", "description": "Dual Runtime 1.8.0", "name": "Release 1.8.0.1", "archived": true, "released": true, "releaseDate": "2011-12-22" } ], "issuelinks": [ { "id": "14869", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "85706", "key": "TIMOB-7474", "fields": { "summary": "Android: Support selecting what ABI to target when using V8 runtime.", "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": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } } ], "assignee": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2012-02-14T23:29:05.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": "It looks like we're including both the Rhino js.jar (via classes.dex) and the 2 V8 ABI-specific shared libraries (libkroll-v8.so, libstlport_shared.so) regardless of which runtime was chosen for the application in the tiapp.xml. We should only bundle the runtime that is given by the `ti.android.runtime` property in the tiapp.xml, or only bundle V8 by default.\r\n\r\nFor V8 we should still be bundling both ABI-specific variations of the libraries in `armeabi` and `armeabi-v7a` folders.\r\n\r\nQ&A issue:\r\nhttp://developer.appcelerator.com/question/131313/why-are-both-rhino-and-v8-bundled-in-the-apk", "attachment": [], "flagged": false, "summary": "Android: APK includes both Javascript runtimes libraries regardless of the chose runtime", "creator": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "181096", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "We should probably provide an option to the developers to chose a specific ABI version if they know their target devices. By default, we should include both.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-30T13:00:57.000+0000", "updated": "2012-01-30T13:00:57.000+0000" }, { "id": "181119", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Created TIMOB-7474 to adding an ABI option.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-30T14:46:24.000+0000", "updated": "2012-01-30T14:46:24.000+0000" }, { "id": "181298", "author": { "name": "kt", "key": "kt", "displayName": "KT", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Would it not be possible to reduce deployed .apk size further by providing the option to only use the armeabi libraries? Maybe I don't understand the issues, of course -- but I was under the impression that the main thing you'd be giving up would be FPU support. For apps that don't depend much on FPU support, there would be a substantial space savings.\r\n\r\nOr do I have this completely wrong?", "updateAuthor": { "name": "kt", "key": "kt", "displayName": "KT", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-31T19:00:58.000+0000", "updated": "2012-01-31T19:00:58.000+0000" }, { "id": "182047", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@KT I opened TIMOB-7474 to add an option for selecting which ABIs to support in your APK.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-06T11:10:13.000+0000", "updated": "2012-02-06T11:10:13.000+0000" }, { "id": "182070", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "KT, in the Q/A ticket you said the Rhino library was getting included into the final APK's dex file.\r\nI tried reproducing this against the latest master by creating a deployment APK. Using dexdump I don't see\r\nany of the Rhino classes being included when using V8 runtime.\r\n\r\nCould you verify this issue still occurs and if so any details I could use to reproduce it?\r\n\r\nThanks,", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-06T12:24:36.000+0000", "updated": "2012-02-06T12:24:36.000+0000" }, { "id": "182074", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Fail test case:\r\n\r\n1. Select Rhino runtime.\r\n2. Package application into APK (deploy).\r\n3. unzip -l the APK\r\n\r\nActual: The lib/ folder contains libkroll-v8 native libraries.\r\n\r\nExpected: No native libraries should be found in the lib/ folder.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-06T12:42:15.000+0000", "updated": "2012-02-06T12:42:15.000+0000" }, { "id": "182172", "author": { "name": "kt", "key": "kt", "displayName": "KT", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Yeah, I think I may have been wrong on that one. It may be that the V8 libraries are getting included regardless, but Rhino also only gets included (appropriately) for a Rhino build.", "updateAuthor": { "name": "kt", "key": "kt", "displayName": "KT", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-06T22:08:29.000+0000", "updated": "2012-02-06T22:08:29.000+0000" }, { "id": "182174", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[Pull request #1365|https://github.com/appcelerator/titanium_mobile/pull/1365] sent to resolve issue.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-06T22:18:28.000+0000", "updated": "2012-02-06T22:18:28.000+0000" }, { "id": "182323", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified fixed with SDK 1.9.0.v20120207000134 using rhino packaged APKs. ", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-07T17:26:26.000+0000", "updated": "2012-02-07T17:26:26.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }