{ "id": "118680", "key": "TIMOB-14899", "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": "15707", "description": "2013 Sprint 23", "name": "2013 Sprint 23", "archived": true, "released": true, "releaseDate": "2013-11-15" }, { "id": "15708", "description": "2013 Sprint 23 API", "name": "2013 Sprint 23 API", "archived": true, "released": true, "releaseDate": "2013-11-15" }, { "id": "14982", "description": "Release 3.2.0", "name": "Release 3.2.0", "archived": false, "released": true, "releaseDate": "2013-12-19" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-11-06T22:02:04.000+0000", "created": "2013-08-16T18:58:53.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "supportTeam" ], "versions": [ { "id": "15479", "description": "Release 3.1.2", "name": "Release 3.1.2", "archived": true, "released": true, "releaseDate": "2013-07-31" } ], "issuelinks": [ { "id": "31408", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "119162", "key": "TIMOB-14978", "fields": { "summary": "Android Build: Create AndroidManifest.xml", "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": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false } } } } ], "assignee": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2013-12-18T23:18:36.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": "h6.Feature Request\r\nTo add ability to have the application name automatically updated in the timodule.xml file when building an application. \r\n\r\nh6.Rationale\r\nForgive me if I'm missing something obvious. The problem is that if they use the included module they have to assume it will be upgraded and replaced when a new Titanium SDK is released. Since the module will be replaced they cannot use the timodule.xml file to add the app id to the required permissions for the maps module. We have to add the permissions below to the tiapp.xml file.\r\n\r\n{code}\r\n \r\n{code}\r\n\r\nWhen we add them like that to the tiapp.xml file we get errors like:\r\n\r\n{code}\r\n[TRACE] Writing out AndroidManifest.xml\r\n[DEBUG] /Users/egomez/android-sdks/build-tools/17.0.0/aapt package -m -J \"/Users/egomez/Documents/Titanium Studio Workspace/TravisTestApp/build/android/gen\" -M \"/Users/egomez/Documents/Titanium Studio Workspace/TravisTestApp/build/android/AndroidManifest.xml\" -S \"/Users/egomez/Documents/Titanium Studio Workspace/TravisTestApp/build/android/res\" -I /Users/egomez/android-sdks/platforms/android-10/android.jar\r\n[ERROR] /Users/egomez/Documents/Titanium Studio Workspace/TravisTestApp/build/android/AndroidManifest.xml:4: Tag attribute name has invalid character '$'.\r\n[ERROR] /Users/egomez/Documents/Titanium Studio Workspace/TravisTestApp/build/android/AndroidManifest.xml:39: Tag attribute name has invalid character '$'.\r\n[ERROR] Error generating R.java from manifest\r\n{code}\r\n\r\nh6.Steps to reproduce\r\nDo a project clean, and build the android app and the map did not load. We then checked the generated AndroidManifest.xml file and looked for the required permissions that are outlined in the index.html file of the maps module. In the AndroidManifest file I found that the following permissions were present:\r\n\r\n{code}\r\n\r\n\r\n{code}\r\n\r\nThe other 4 were not present in the manifest file and they need to be included for the Maps Module to work. Client would like to propose that the following be included in the timodule.xml that is included with the maps module that way they are automatically added to the manifest with the correct app id. The 4 which should be added to timodule.xml are:\r\n\r\n{code}\r\n\r\n\r\n\r\n\r\n{code}\r\n\r\nh6.Additional info\r\nClient also tested this by modifying the timodule.xml file for the module in the following directory: \r\n\r\n- \"/Library/Application Support/Titanium/Modules/android/ti.map/2.1.1/\" \r\n\r\nWhen they just added those 4 lines the maps module started working properly. Also can be confirmed that the 4 missing permissions/features are now present in the AndroidManifest.xml file.", "attachment": [], "flagged": false, "summary": "Tooling: Include Google Maps V2 metadata into timodule.xml so can be added to the manifest with the correct app id.", "creator": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "environment": "TiSDK 3.1.2.GA\r\nGoogle Maps V2 2.1.2\r\nAndroid 4", "comment": { "comments": [ { "id": "267167", "author": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I agree that this would be convenient, but you would still need to add a node in your tiapp.xml for the Google API keys. Instead of adding these entries in timodule.xml, you can just add it in the tiapp.xml like it says in the docs http://docs.appcelerator.com/titanium/latest/#!/guide/Google_Maps_v2_for_Android-section-36739898_GoogleMapsv2forAndroid-ObtainandAddaGoogleAPIKey\n\nCan you let me know if there are any issues with adding this to the tiapp.xml instead of the timodule.xml? Normally, you shouldn't need to modify timodule.xml.\n\nSince Chris is doing a rewrite of the android build command, I think this should be done as a part of that instead of putting in another quick fix for 3.1.3.", "updateAuthor": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-08-19T18:34:38.000+0000", "updated": "2013-08-19T18:34:38.000+0000" }, { "id": "278133", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Testing steps:\n1. Create a new project, only add the map v2 key to manifest (You may need to generate this).\n2. Build the project with map module, all other required permissions should be automatically added.\n3. Run the project with example/app.js, app should run as expected.", "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-11-05T06:56:05.000+0000", "updated": "2013-11-05T06:56:05.000+0000" }, { "id": "278381", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR: https://github.com/appcelerator-modules/ti.map/pull/19", "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-11-06T06:17:45.000+0000", "updated": "2013-11-06T06:17:45.000+0000" }, { "id": "285096", "author": { "name": "lokeshchdhry", "key": "lokeshchdhry", "displayName": "Lokesh Choudhary", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Verified by running the testing steps from Hieu & the necessary permissions are automatically added when just mapv2key is present in the android manifest file.\r\n\r\nClosing.\r\n\r\nEnvironment:\r\nAppcel Studio : 3.2.0.201312171913\r\nTi SDK : 3.2.0.v20131217190633\r\nMac OSX : 10.8.5\r\nAlloy : 1.3.0-cr2\t\r\nCLI - 3.2.0-cr3\r\nSamsung Galaxy S4 running android 4.2.2\r\n", "updateAuthor": { "name": "lokeshchdhry", "key": "lokeshchdhry", "displayName": "Lokesh Choudhary", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-12-18T23:18:36.000+0000", "updated": "2013-12-18T23:18:36.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }