{ "id": "175330", "key": "TIMOB-28027", "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": "21052", "description": "", "name": "Release 9.3.0", "archived": false, "released": true, "releaseDate": "2020-12-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2020-11-23T22:08:16.000+0000", "created": "2020-07-16T23:43:44.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "android", "i18n", "localization", "regression" ], "versions": [ { "id": "20033", "name": "Release 9.0.0", "archived": false, "released": true, "releaseDate": "2020-03-18" } ], "issuelinks": [], "assignee": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2020-11-23T22:08:16.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": "Note: This is an undocumented way of doing it. But,we need to put in a check for this.\r\n\r\nh5.Steps to reproduce:\r\n1. Create an app.\r\n2. Create a folder & a string.xml file for each locale as {{./i18n/en/strings.xml}} & {{./i18n/es/strings.xml}}\r\n3. In strings.xml in en folder add:\r\n{code}\r\n\r\n Cat\r\n\r\n{code}\r\n4. In strings.xml in es folder add:\r\n{code}\r\n\r\n Catana\r\n\r\n{code}\r\n5. In the tiapp.xml add this in the android section:\r\n{code}\r\n\r\n \r\n\r\n{code}\r\n6. Build for android device/emulator.\r\n\r\nh5.Actual result:\r\nThe build fails with :\r\n{code}\r\n[ERROR] : [GRADLE] \r\n[ERROR] : [GRADLE] FAILURE: Build failed with an exception.\r\n[ERROR] : [GRADLE] \r\n[ERROR] : [GRADLE] * What went wrong:\r\n[ERROR] : [GRADLE] Execution failed for task ':app:mergeDebugResources'.\r\n[ERROR] : [GRADLE] > /Users/lchoudhary/Desktop/workspaces/workspace_2020/AppName_i18n/build/android/app/src/main/res/values/ti_i18n_strings.xml: Error: Found item String/app_name more than one time\r\n[ERROR] : [GRADLE] \r\n[ERROR] : [GRADLE] * Try:\r\n[ERROR] : [GRADLE] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.\r\n[ERROR] : [GRADLE] \r\n[ERROR] : [GRADLE] * Get more help at https://help.gradle.org\r\n[ERROR] : [GRADLE] \r\n[ERROR] : [GRADLE] BUILD FAILED in 770ms\r\n{code}\r\n\r\nh5.Expected result:\r\nThe build should not fail.\r\n\r\nh5.Recommended Solution:\r\nThe official cross-platform way of localizing app name is via an i18n \"app.xml\" file as documented here...\r\nhttps://docs.appcelerator.com/platform/latest/#!/guide/Internationalization-section-src-29004892_Internationalization-Appnamelocalization\r\n\r\n", "attachment": [], "flagged": false, "summary": "Android: Build fails as duplicate string with \"app_name\" in i18n strings.xml file", "creator": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "closedSprints": [ { "id": 1206, "state": "closed", "name": "2020 Sprint 19", "startDate": "2020-09-14T20:01:00.000Z", "endDate": "2020-09-25T20:01:00.000Z", "completeDate": "2020-09-28T15:30:19.875Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "456218", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/11841", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-07-24T00:17:40.000+0000", "updated": "2020-07-24T00:17:40.000+0000" }, { "id": "457193", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed\r\nWaiting for Jenkins build", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-10-07T20:32:44.000+0000", "updated": "2020-10-07T20:32:44.000+0000" }, { "id": "457696", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified on:\r\nMac OS: 10.15.4\r\nSDK: 9.3.0.v20201123121926\r\nAppc CLI: 8.1.1\r\nJDK: 11.0.6\r\nNode: 12.16.1\r\nStudio: 6.0.0.202005141803\r\nDevice: Pixel 3 XL(v11.0) emulator", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-11-23T22:08:16.000+0000", "updated": "2020-11-23T22:08:16.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }