{ "id": "160700", "key": "TIMOB-26537", "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": "19882", "name": "Release 8.0.0", "archived": false, "released": true, "releaseDate": "2019-03-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2018-12-27T19:49:57.000+0000", "created": "2016-06-01T21:42:16.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "android", "build", "cli", "manifest", "module" ], "versions": [], "issuelinks": [], "assignee": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "updated": "2019-01-15T17:58:17.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" } ], "attachment": [ { "id": "59460", "filename": "with_Map_Module_AndroidManifest.txt", "author": { "name": "morahman", "key": "morahman", "displayName": "Motiur Rahman", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2016-06-01T21:42:03.000+0000", "size": 2432, "mimeType": "text/plain" }, { "id": "59461", "filename": "Without_Map_Mdule_AndroidManifest.txt", "author": { "name": "morahman", "key": "morahman", "displayName": "Motiur Rahman", "active": true, "timeZone": "Asia/Dhaka" }, "created": "2016-06-01T21:39:54.000+0000", "size": 2073, "mimeType": "text/plain" } ], "flagged": false, "summary": "Android: Module \"AndroidManifest.xml\" elements overwrites \"tiapp.xml\" elements", "creator": { "name": "morahman", "key": "morahman", "displayName": "Motiur Rahman", "active": true, "timeZone": "Asia/Dhaka" }, "subtasks": [], "reporter": { "name": "morahman", "key": "morahman", "displayName": "Motiur Rahman", "active": true, "timeZone": "Asia/Dhaka" }, "environment": "module version: ti.map v(2.3.8)\r\nAppc CLI 5.2.2\r\nTi SDK: 5.2.2\r\nAndroid 6 and earlier version", "comment": { "comments": [ { "id": "399312", "author": { "name": "rramirez", "key": "rramirez", "displayName": " Ricardo Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "updates ?", "updateAuthor": { "name": "rramirez", "key": "rramirez", "displayName": " Ricardo Ramirez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-10-18T22:21:55.000+0000", "updated": "2016-10-18T22:21:55.000+0000" }, { "id": "441381", "author": { "name": "michael", "key": "michael", "displayName": "Michael Gangolf", "active": true, "timeZone": "Europe/Berlin" }, "body": "I found the problem:\r\nhttps://github.com/appcelerator/titanium_mobile/blob/master/android/cli/lib/AndroidManifest.js#L493\r\n\r\nThis loop will run multiple times (for each module) and adds the uses-features. \r\nIf you have two uses-features in your tiapp.xml the output in the first run will be\r\n\r\n{noformat}\r\ntag: uses-feature, name: 0 { name: 'android.hardware.camera', required: false }\r\ntag: uses-feature, name: 1 { name: 'android.hardware.camera.focus', required: false }\r\n{noformat}\r\n\r\nThen when it adds the ti.map uses-features the first output is:\r\n{noformat}\r\ntag: uses-feature, name: 0 { glEsVersion: '0x00020000', required: true }\r\n{noformat}\r\n\r\nso this will overwrite the first item!\r\n\r\nChanging it to \r\n{noformat}\r\nthis[tag][src[tag][name]] = src[tag][name];\r\n{noformat}\r\nwould fix the missing items but it will fail for elements that don't have a name like\r\n{noformat}{noformat}\r\nThey will appear multiple times in the output.\r\n\r\n", "updateAuthor": { "name": "michael", "key": "michael", "displayName": "Michael Gangolf", "active": true, "timeZone": "Europe/Berlin" }, "created": "2018-09-06T16:26:17.000+0000", "updated": "2018-09-06T16:26:17.000+0000" }, { "id": "443475", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "This is currently an Android P blocker and should definitely be fixed before 7.5.0 is released. Without this fix, no devices running Android P will be able to run apps that use Ti.Map because of MOD-2467. The (really bad) workaround we used for now is to inject it to the SDK manually, by copying the required {{}} flag into:\r\n{code}\r\n~/Library/Application Support/Titanium/mobilesdk/osx/7.4.1.GA/android/templates/build/AndroidManifest.xml\r\n{code}\r\nReplace with the version you are using of course.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2018-11-11T10:06:59.000+0000", "updated": "2018-11-11T10:07:53.000+0000" }, { "id": "443573", "author": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "body": "PR: https://github.com/appcelerator/titanium_mobile/pull/10467", "updateAuthor": { "name": "ybanev", "key": "ybanev", "displayName": "Yordan Banev", "active": true, "timeZone": "Europe/Athens" }, "created": "2018-11-14T13:01:23.000+0000", "updated": "2018-11-14T13:01:23.000+0000" }, { "id": "444872", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed.\r\nPR Merged.", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-12-27T19:49:43.000+0000", "updated": "2018-12-27T19:49:43.000+0000" }, { "id": "444964", "author": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Closing ticket. Fix verified in SDK version 8.0.0.v20190102142454\r\n\r\nTest and other information can be found at:\r\nhttps://github.com/appcelerator/titanium_mobile/pull/10467", "updateAuthor": { "name": "smohammed", "key": "smohammed", "displayName": "Samir Mohammed", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2019-01-03T12:45:59.000+0000", "updated": "2019-01-03T12:45:59.000+0000" }, { "id": "445346", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "This is NOT fixed. We just pulled down a fresh 8_0_X and still seeing the error described in MOD-2467.\r\n{code}\r\n[ERROR] TiExceptionHandler: (main) [829,35362] Failed resolution of: Lorg/apache/http/ProtocolVersion;\r\n[ERROR] TiExceptionHandler:\r\n[ERROR] TiExceptionHandler: dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)\r\n[ERROR] TiExceptionHandler: java.lang.ClassLoader.loadClass(ClassLoader.java:379)\r\n[ERROR] TiExceptionHandler: dhd.loadClass(:com.google.android.gms@12862026@12.8.62 (040700-199405334):3)\r\n[ERROR] TiExceptionHandler: java.lang.ClassLoader.loadClass(ClassLoader.java:312)\r\n[ERROR] TiExceptionHandler: el.b(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):3)\r\n[ERROR] TiExceptionHandler: ek.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):4)\r\n[ERROR] TiExceptionHandler: em.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):51)\r\n[ERROR] TiExceptionHandler: com.google.maps.api.android.lib6.drd.ap.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):11)\r\n[ERROR] TiExceptionHandler: dw.a(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):16)\r\n[ERROR] TiExceptionHandler: dw.run(:com.google.android.gms.dynamite_mapsdynamite@12862026@12.8.62 (040700-199405334):61)\r\n{code}", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2019-01-15T17:49:58.000+0000", "updated": "2019-01-15T17:49:58.000+0000" }, { "id": "445348", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Excuse me, the tag was misplaced! It seems to work fine now.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2019-01-15T17:58:17.000+0000", "updated": "2019-01-15T17:58:17.000+0000" } ], "maxResults": 18, "total": 18, "startAt": 0 } } }