{ "id": "85706", "key": "TIMOB-7474", "fields": { "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "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": "14137", "description": "Release 2.1.3", "name": "Release 2.1.3", "archived": true, "released": true, "releaseDate": "2012-10-03" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" }, { "id": "14097", "description": "Sprint 2012-18 Core", "name": "Sprint 2012-18 Core", "archived": true, "released": true, "releaseDate": "2012-09-10" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-12-21T05:43:49.000+0000", "created": "2012-01-30T14:45:13.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "SupportTeam", "core", "module_build", "qe-review", "qe-testadded" ], "versions": [ { "id": "13273", "description": "Release 2.0.2", "name": "Release 2.0.2", "archived": false, "released": true, "releaseDate": "2012-05-31" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" }, { "id": "13270", "description": "Release 1.8 Service Pack 3 (CI for 1_8_X)", "name": "Release 1.8.3", "archived": true, "released": false } ], "issuelinks": [ { "id": "19832", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "99002", "key": "TIMOB-10394", "fields": { "summary": "Android: Two versions of V8 are shipped", "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": "Low", "id": "4" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "14869", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "85703", "key": "TIMOB-7472", "fields": { "summary": "Android: APK includes both Javascript runtimes libraries regardless of the chose 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": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "24115", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "107333", "key": "TIMOB-12193", "fields": { "summary": "Fatal exception - App crash on Motorola RAZR i x86 processor", "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": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2013-01-03T16:00:57.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": "Allow developer to specify in tiapp.xml which ABI to support when using V8 runtime.\r\nCurrently we always bundle both ABI versions of the native library. If the developer only wishes\r\nto support one ABI version to cut down size of the APK they may choose to do so.\r\n\r\nhttp://developer.appcelerator.com/question/131313/why-are-both-rhino-and-v8-bundled-in-the-apk", "attachment": [ { "id": "30853", "filename": "log2.2.0CI.txt", "author": { "name": "mpmiranda", "key": "mpmiranda", "displayName": "Mauro Parra-Miranda", "active": true, "timeZone": "America/Mexico_City" }, "created": "2012-08-29T11:01:50.000+0000", "size": 1084, "mimeType": "text/plain" } ], "flagged": false, "summary": "Android: Support selecting what ABI to target when using V8 runtime.", "creator": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "216641", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "h3. Testing Notes\r\n\r\nh4. Not specifying an ABI\r\n\r\n* Create a new app.\r\n\r\n* Build and launch it on a device. Make sure it runs. (This step just tests that the most common use case -- not specifying an ABI -- is not broken.)\r\n\r\n* Also go down to the command line, navigate to your project's build/android/bin folder, and run {{unzip -l app.apk}}. In the output, make sure you see libraries for both armeabi and armeabi-v7a. Like in this sample output:\r\n\r\n{code}\r\n 11716 08-29-12 01:13 lib/armeabi/libtiverify.so\r\n 5532236 08-29-12 00:20 lib/armeabi/libkroll-v8.so\r\n 393604 08-29-12 00:20 lib/armeabi/libstlport_shared.so\r\n 11768 08-29-12 01:13 lib/armeabi-v7a/libtiverify.so\r\n 5510044 08-29-12 00:20 lib/armeabi-v7a/libkroll-v8.so\r\n 393496 08-29-12 00:20 lib/armeabi-v7a/libstlport_shared.so\r\n{code}\r\n\r\nh4. Specifying one ABI\r\n\r\n* Edit the tiapp.xml and add the element to the section and make it look like this:\r\n\r\n{code}\r\n\r\n\tarmeabi\r\n\r\n{code}\r\n\r\n* Build and launch the app on device. Make sure it runs.\r\n\r\n* Also go down to the command line, navigate to your project's build/android/bin folder, and run {{unzip -l app.apk}}. In the output, make sure you see libraries for *only* armeabi, *not* armeabi-v7a. Like in this sample output:\r\n\r\n{code}\r\n 11716 08-29-12 01:13 lib/armeabi/libtiverify.so\r\n 5532236 08-29-12 00:20 lib/armeabi/libkroll-v8.so\r\n 393604 08-29-12 00:20 lib/armeabi/libstlport_shared.so\r\n{code}\r\n\r\nh4. Specifying \"all\"\r\n\r\n* We also support explicitly specifying \"all\", which is the same as removing the element altogether. But test it by replacing \"armeabi\" with \"all\" in tiapp.xml's element.\r\n\r\n* Build and run the app, make sure it works.\r\n\r\n* Go down to the command line and again run {{unzip -l app.apk}} and make sure you see libs for both armeabi and armeabi-v7a, like in the first test above.\r\n\r\nh4. Specifying multiple ABIs, comma-separated.\r\n\r\n* We also support comma-separated list of ABIs to package libs for. So replace \"all\" with \"armeabi,armeabi-v7a\" (no space).\r\n\r\n* Build and run, make sure it works.\r\n\r\n* Go down to the command line and again run {{unzip -l app.apk}} and make sure you see libs for both armeabi and armeabi-v7a, like in the first test above.\r\n\r\n", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-08-28T16:54:07.000+0000", "updated": "2012-08-28T16:54:07.000+0000" }, { "id": "216666", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR ready\r\n\r\nhttps://github.com/appcelerator/titanium_mobile/pull/2848/", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-08-28T17:51:32.000+0000", "updated": "2012-08-28T17:51:32.000+0000" }, { "id": "216708", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Is extending the android manifest really the only option for specifying the ABIs?\r\nI think it might be better if we use a property tag. Example:\r\n\r\n{code:xml}\r\n armabi, armabi-v7a\r\n{code}\r\n", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-28T22:44:38.000+0000", "updated": "2012-08-28T22:44:57.000+0000" }, { "id": "216773", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "I'm not putting it in the manifest section, but in the section (not in other words.) I know the section has a tendency to look like the manifest because we pre-supply the android xml namespace for convenience in case someone _does_ put in the manifest section. But its purpose is not solely to house the manifest. For example, another build-time setting is in there ().\r\n\r\n tags become runtime SharedPreferences and should only be used if the values are needed at runtime, which is why we support the optional \"type\" attribute for them. We may not be 100% consistent about using them only when values are needed at runtime, but it certainly _should_ be that way.", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-08-29T08:14:33.000+0000", "updated": "2012-08-29T08:14:33.000+0000" }, { "id": "216791", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Bill, okay that seems logical. Yeah I did confuse the tag as being part of Android's manifest schema.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-29T09:26:06.000+0000", "updated": "2012-08-29T09:26:06.000+0000" }, { "id": "216802", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Mauro, please use file attachments for logs so the comments section doesn't explode in length.\r\nA quick look of the log only seems to show a HTTPClient socket error (possible connection issue?).", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-29T09:57:02.000+0000", "updated": "2012-08-29T09:57:02.000+0000" }, { "id": "217180", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "2_1_X cherry-pick PR ready. *Do not merge until 2.1.2 is released and build/titanium_version.py shows 2.1.3.*\r\n\r\nhttps://github.com/appcelerator/titanium_mobile/pull/2859", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-08-31T10:11:44.000+0000", "updated": "2012-08-31T10:11:44.000+0000" }, { "id": "217624", "author": { "name": "tsmolich", "key": "tsmolich", "displayName": "Tamila Smolich", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified ability to specify in tiapp.xml which ABI to support when using V8 runtime.\r\nNow developers can specify one ABI (armeabi or armeabi-v7a) or all ABIs.\r\nNew feature was verified using Bill's test steps by building the app and packaging as well.\r\n\r\nNote:\r\nIf the app was built for device with spicifying \"all\" ABIs, you'll find in /build/android/bin/app.apk\\ Folder/lib not only \"armeabi\" and \"armeabi-v7a\", but also \"x86\". I discussed with Josh and this is expected behavior.\r\n\r\n\r\nVerified on:\r\nTitanium Studio, build: 2.1.2.201208301612\r\nTitanium SDK, build: 2.1.3.v20120904163110\r\nOS: Mac OS X Lion 10.7.4", "updateAuthor": { "name": "tsmolich", "key": "tsmolich", "displayName": "Tamila Smolich", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-05T11:11:12.000+0000", "updated": "2012-09-05T11:11:12.000+0000" } ], "maxResults": 15, "total": 15, "startAt": 0 } } }