{ "id": "174806", "key": "TIMOB-27801", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "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": "21199", "description": "", "name": "Release 10.0.1", "archived": false, "released": true, "releaseDate": "2021-07-28" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2021-06-22T15:29:33.000+0000", "created": "2020-03-10T23:50:31.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [ "android", "build", "ndk", "sdk" ], "versions": [], "issuelinks": [ { "id": "58258", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "174801", "key": "TIMOB-27798", "fields": { "summary": "Android: Module build should auto-download NDK if not installed", "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": "Medium", "id": "3" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } }, { "id": "59253", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "176104", "key": "TIMOB-28377", "fields": { "summary": "Android: Remove deprecated usage of \"ndk.dir\" in \"local.properties\" file", "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": "Medium", "id": "3" }, "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2021-06-22T15:29:53.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": "*Summary:*\r\nGoogle's gradle tool supports downloading the Android NDK for C/C++ builds. We should let it do so if the Titanium SDK is unable to find the NDK.\r\n\r\n*Note:*\r\nCurrently, the SDK's {{node scons}} build scripts will fail the build if it can't find the NDK directory. Instead, it should generate a {{local.properties}} file without the {{ndk.dir}} property.\r\n[createLocalPropertiesFile ()|https://github.com/appcelerator/titanium_mobile/blob/9a3e46dbea8083bce98dbae5c3795f669a2b7928/build/lib/android/index.js#L285]\r\n", "attachment": [], "flagged": false, "summary": "Android: Building the SDK should auto-download NDK if not installed", "creator": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "closedSprints": [ { "id": 1181, "state": "closed", "name": "2020 Sprint 5", "startDate": "2020-03-02T18:45:02.513Z", "endDate": "2020-03-13T18:45:00.000Z", "completeDate": "2020-03-13T16:42:04.632Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "454651", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/11531\r\nPR (9.0.x): https://github.com/appcelerator/titanium_mobile/pull/11532\r\n", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-03-11T01:26:46.000+0000", "updated": "2020-03-11T01:26:46.000+0000" }, { "id": "454765", "author": { "name": "ssaddique", "key": "ssaddique", "displayName": "Sohail Saddique", "active": true, "timeZone": "Europe/London" }, "body": "*FR Passed*\r\n\r\nNDK auto installs if it isn't already installed. Verified with the test case listed on the PR.", "updateAuthor": { "name": "ssaddique", "key": "ssaddique", "displayName": "Sohail Saddique", "active": true, "timeZone": "Europe/London" }, "created": "2020-03-19T13:53:47.000+0000", "updated": "2020-03-19T13:53:47.000+0000" }, { "id": "455029", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The builds fails if NDK not installed\r\n\r\n{code:java}\r\n[INFO] [GRADLE] WARNING: Compatible side by side NDK version was not found. Default is 20.0.5594570.\r\n[INFO] [GRADLE] Compatible side by side NDK version was not found. Default is 20.0.5594570.\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] A problem occurred configuring project ':module'.\r\n[ERROR] [GRADLE] > Failed to notify project evaluation listener.\r\n[ERROR] [GRADLE] > NDK not configured. Download it with SDK manager. Preferred NDK version is '20.0.5594570'. Log: /Users/satyamsekhri/Documents/GitRepos/ti.imagefactory-stable/android/build/module/.cxx/ndk_locator_record.json\r\n[ERROR] [GRADLE] > Could not get unknown property 'externalNativeBuildDebug' for project ':module' of type org.gradle.api.Project.\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 897ms\r\n[ERROR] \"gradlew\" tool returned exit code: 1\r\n[ERROR] An error occurred during build after 2s 441ms\r\n[ERROR] \"gradlew\" tool returned exit code: 1\r\n{code}\r\n\r\nVerified on:\r\nMac OS: 10.15.1\r\nSDK: 9.0.1.v20200408050151, 9.1.0.v20200406120646\r\nAppc CLI: 8.0.0\r\nJDK: 11.0.4\r\nNode: 10.17.0", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-04-08T20:37:55.000+0000", "updated": "2020-04-08T20:37:55.000+0000" }, { "id": "455033", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This started happening when we updated Android gradle tool to {{3.6.0}} via [TIMOB-27778].\r\n\r\nThis appears to be a bug in Android gradle tool {{3.6.0}}, {{3.6.1}}, and {{3.6.2}}. If an {{ndk.dir}} is not provided via a \"local.properties\" file, then the Android gradle tool defaults to NDK version {{20.0.5594570}} which is an *unstable* release. The gradle tools only supports downloading *stable* releases listed by the links below, which is why it fails.\r\nhttps://developer.android.com/ndk/downloads\r\nhttps://developer.android.com/ndk/downloads/older_releases\r\n\r\nI'll have to find a work-around.", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-04-08T22:49:12.000+0000", "updated": "2020-04-08T23:02:54.000+0000" }, { "id": "455075", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I'm removing this ticket from the release.\r\n\r\nThere doesn't appear to be a reliable way of doing this until Google makes this work better in their Android gradle tool. Although it's less of an issue here since you would normally work on the SDK code via Android Studio and you can easily add the NDK from the IDE.", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-04-10T18:14:37.000+0000", "updated": "2020-04-10T18:14:37.000+0000" }, { "id": "458561", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR (master): https://github.com/appcelerator/titanium_mobile/pull/12711", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2021-04-10T03:39:43.000+0000", "updated": "2021-04-10T03:39:43.000+0000" }, { "id": "458805", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "master and 10_0_X backport merged", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2021-06-22T15:29:53.000+0000", "updated": "2021-06-22T15:29:53.000+0000" } ], "maxResults": 7, "total": 7, "startAt": 0 } } }