{ "id": "79519", "key": "TIMOB-5076", "fields": { "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "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": "12094", "description": "", "name": "Sprint 2012-02", "archived": true, "released": true, "releaseDate": "2012-01-29" }, { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" }, { "id": "12677", "description": "Release 1.8 Service Pack 1", "name": "Release 1.8.1", "archived": true, "released": true, "releaseDate": "2012-01-31" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-01-24T12:41:05.000+0000", "created": "2011-08-22T13:40:30.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "modules", "timodule" ], "versions": [ { "id": "11331", "description": "", "name": "Release 1.8.0", "archived": true, "released": true, "releaseDate": "2011-10-31" } ], "issuelinks": [ { "id": "12510", "type": { "id": "10020", "name": "Depends", "inward": "is dependent of", "outward": "depends on" }, "outwardIssue": { "id": "78043", "key": "TIMOB-4737", "fields": { "summary": "Tooling: Allow substitution parameters for Android package name", "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": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2014-02-04T00:45: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": "(The wiki page that needs updating is: https://wiki.appcelerator.org/display/guides/tiapp.xml+and+timodule.xml+Reference ).\r\n\r\nModule developers can now include tokens in their timodule.xml file's section. These tokens will be replaced with real values from an app's tiapp.xml when building an app that includes the module. For example, if the module includes a new android , the {{android:name}} of that permission may require the app id of the application *using* the module, which of course the module developer cannot know beforehand. So with this new tokening feature, the module developer can put a token in which will be replaced when the application is built.\r\n\r\nE.g.,\r\n\r\n{code:title=timodule.xml}\r\n\r\n \r\n \r\n \r\n\r\n{code}\r\n\r\nAs you can see, the token looks like:\r\n\r\n{code}\r\n${tiapp.properties['id']}\r\n{code}\r\n\r\nSo in that example, {{tiapp.properties}} refers to a collection of all of the top-level element names you always find in tiapp.xml, such as {{}}, {{}}, {{}}, {{}} etc. To access a member of the collection -- like we've done in the example with \"id\" -- use square brackets with the property name in quotes inside.\r\n\r\nWhen an app with id \"com.appcelerator.bogus\" which contains the module is built using the above example, the app's AndroidManifest.xml will end up with a ...\r\n\r\n{code}\r\n\r\n{code}\r\n\r\n... in it.\r\n", "attachment": [], "flagged": false, "summary": "Android: update timodule.xml documentation to explain token substitutions", "creator": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "comment": { "comments": [ { "id": "180443", "author": { "name": "aevans", "key": "aevans", "displayName": "Arthur Evans", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I updated the page. Please review:\r\n\r\nhttps://wiki.appcelerator.org/display/guides/tiapp.xml+and+timodule.xml+Reference#tiapp.xmlandtimodule.xmlReference-timodule.xml", "updateAuthor": { "name": "aevans", "key": "aevans", "displayName": "Arthur Evans", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-01-24T11:34:53.000+0000", "updated": "2012-01-24T11:34:53.000+0000" }, { "id": "180453", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "Exactly!", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-01-24T12:40:13.000+0000", "updated": "2012-01-24T12:40:13.000+0000" }, { "id": "180454", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "There are no QE needs for this, so closing entirely.", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-01-24T12:41:05.000+0000", "updated": "2012-01-24T12:41:05.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }