{ "id": "166921", "key": "TIMOB-24555", "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": "19333", "description": "Patch release for important items that did not make it into 6.0.3", "name": "Release 6.0.4", "archived": false, "released": true, "releaseDate": "2017-04-27" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-04-10T23:26:25.000+0000", "created": "2017-04-04T05:12:01.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "android", "build-tools" ], "versions": [ { "id": "19275", "description": "Patch release for 6.0.x regressions or important fixes", "name": "Release 6.0.3", "archived": false, "released": true, "releaseDate": "2017-03-22" } ], "issuelinks": [ { "id": "54688", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "162822", "key": "TIMOB-23826", "fields": { "summary": "Android: Build fails using build tools higher than 24.0 and Java 1.7", "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": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "updated": "2017-04-21T17:54:49.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 latest Android tooling seems to break the usage with Titanium, because the {{/tools/android}} command is deprecated in favor of the one embedded in Android Studio. \r\n\r\nThis issue was raised by the community, here are some more details:\r\n{quote}\r\nI have just updated my Android Studio installation with the latest android tools and now Ti doesn’t recognize the Android sdk anymore on ti info, the platforms list is always empty.\r\n\r\nThis is likely because /tools/android is deprecated and Google now uses the sdkmanager binary to handle sdk versions. It is really annoying having to maintain 2 separate android sdks on the same machine as it consumes an awful lot of space.\r\n{quote}\r\n\r\nFurther references:\r\n* https://code.google.com/p/android/issues/detail?id=235455\r\n* http://tools.android.com/recent/androidsdktoolsrevision2530feb2017\r\n* https://developer.android.com/studio/tools/help/android.html", "attachment": [ { "id": "61964", "filename": "sdkmanager.jpg", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-04-04T12:09:10.000+0000", "size": 72614, "mimeType": "image/jpeg" } ], "flagged": false, "summary": "Android: Latest Android Tools breaks development with Titanium", "creator": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "closedSprints": [ { "id": 864, "state": "closed", "name": "2017 Sprint 07 Tooling", "startDate": "2017-03-26T22:02:46.538Z", "endDate": "2017-04-09T22:02:00.000Z", "completeDate": "2017-04-10T15:38:31.332Z", "originBoardId": 199 } ], "comment": { "comments": [ { "id": "416722", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Currently, {{25.2.3}} is the latest command-line tools available to download from https://developer.android.com/studio/index.html\r\n\r\nHowever, https://developer.android.com/studio/releases/sdk-tools.html shows 26.0.1 is available, which is only available as a preview.\r\n\r\n!sdkmanager.jpg|thumbnail!\r\n\r\n*SDK Manager*\r\nhttps://developer.android.com/studio/command-line/sdkmanager.html", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-04-04T12:09:18.000+0000", "updated": "2017-04-04T12:09:48.000+0000" }, { "id": "416726", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "They recommend the {{sdkmanager}} and {{avdmanager}} for 25.2.3 and later. Some usage details:\r\n\r\n*SDK-Manager options*:\r\n{code}\r\n sdkmanager [--uninstall] [] [--package_file ] [...]\r\n sdkmanager --update []\r\n sdkmanager --list []\r\n sdkmanager --licenses []\r\n\r\nIn its first form, installs, or uninstalls, or updates packages.\r\n By default, the listed packages are installed or (if already installed)\r\n updated to the latest version.\r\n\r\n --uninstall: uninstalled listed packages.\r\n\r\n is a sdk-style path (e.g. \"build-tools;23.0.0\" or\r\n \"platforms;android-23\").\r\n is a text file where each line is a sdk-style path\r\n of a package to install or uninstall.\r\n Multiple --package_file arguments may be specified in combination\r\n with explicit paths.\r\n\r\nIn its second form (with --update), all installed packages are\r\n updated to the latest version.\r\n\r\nIn its third form, all installed and available packages are printed\r\n out.\r\n\r\nIn its fourth form (with --licenses), show and offer the option to\r\n accept licenses for all available packages that have not already been\r\n accepted.\r\n\r\nCommon Arguments:\r\n --sdk_root=: Use the specified SDK root instead of the SDK \r\n containing this tool\r\n\r\n --channel=: Include packages in channels up to .\r\n Common channels are:\r\n 0 (Stable), 1 (Beta), 2 (Dev), and 3 (Canary).\r\n\r\n --include_obsolete: With --list, show obsolete packages in the\r\n package listing. With --update, update obsolete\r\n packages as well as non-obsolete.\r\n\r\n --no_https: Force all connections to use http rather than https.\r\n\r\n --proxy=: Connect via a proxy of the given type.\r\n\r\n --proxy_host=: IP or DNS address of the proxy to use.\r\n\r\n --proxy_port=: Proxy port to connect to.\r\n\r\n* If the env var REPO_OS_OVERRIDE is set to \"windows\",\r\n \"macosx\", or \"linux\", packages will be downloaded for that OS.\r\n{code}\r\n\r\n*AVD-Manager options*:\r\n{code}\r\nUsage:\r\n avdmanager [global options] [action] [action options]\r\n Global options:\r\n -s --silent : Silent mode, shows errors only.\r\n -v --verbose : Verbose mode, shows errors, warnings and all messages.\r\n --clear-cache: Clear the SDK Manager repository manifest cache.\r\n -h --help : Help on a specific command.\r\n\r\nValid actions are composed of a verb and an optional direct object:\r\n- list : Lists existing targets or virtual devices.\r\n- list avd : Lists existing Android Virtual Devices.\r\n- list target : Lists existing targets.\r\n- list device : Lists existing devices.\r\n- create avd : Creates a new Android Virtual Device.\r\n- move avd : Moves or renames an Android Virtual Device.\r\n- delete avd : Deletes an Android Virtual Device.\r\n{code}\r\n\r\n*List of Android SDK's*: {{/opt/android-sdk/tools/bin/sdkmanager --list}}:\r\n{code}\r\nInstalled packages:\r\n Path | Version | Description | Location \r\n ------- | ------- | ------- | ------- \r\n add-ons;addon-g..._apis-google-23 | 1.0.0 | Google APIs, Android 23 | add-ons/addon-g...apis-google-23/\r\n build-tools;21.1.2 | 21.1.2 | Android SDK Build-Tools 21.1.2 | build-tools/21.1.2/ \r\n build-tools;22.0.1 | 22.0.1 | Android SDK Build-Tools 22.0.1 | build-tools/22.0.1/ \r\n build-tools;23.0.3 | 23.0.3 | Android SDK Build-Tools 23.0.3 | build-tools/23.0.3/ \r\n build-tools;25.0.2 | 25.0.2 | Android SDK Build-Tools 25.0.2 | build-tools/25.0.2/ \r\n emulator | 26.0.0 | Android Emulator | emulator/ \r\n...\r\n{code}\r\n*List of Android devices*: {{/opt/android-sdk/tools/bin/avdmanager list}}:\r\n{code}\r\n----------\r\nid: 3 or \"android-23\"\r\n Name: Android API 23\r\n Type: Platform\r\n API level: 23\r\n Revision: 3\r\n----------\r\nid: 4 or \"android-25\"\r\n Name: Android API 25\r\n Type: Platform\r\n API level: 25\r\n Revision: 3\r\n...\r\n{code}\r\n*Create new Android Emulator*: \r\n{code}\r\n/opt/android-sdk/tools/bin/avdmanager create avd --name TiEmulator --device 1 --package \"system-images;android-23;default;x86_64\"}}\r\n{code}\r\n\r\nReminds me of the iOS simulator list.\r\nMore infos: https://developer.android.com/studio/command-line/sdkmanager.html\r\n", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-04-04T12:51:08.000+0000", "updated": "2017-04-04T13:04:19.000+0000" }, { "id": "416727", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{{/tools/android.*}} is removed in {{Revision 25.3.0 (March 2017)}} but this revision and later is currently not available to download. I believe Google may have pulled these revisions due to this breaking change.\r\n\r\nUPDATE: Android Studio 2.3 ships with SDK Tools {{25.3.1}}", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-04-04T12:57:32.000+0000", "updated": "2017-04-04T14:13:17.000+0000" }, { "id": "416871", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Titanium SDK master PR: https://github.com/appcelerator/titanium_mobile/pull/8929\r\nTitanium SDK 6_1_X PR: https://github.com/appcelerator/titanium_mobile/pull/8935\r\nTitanium SDK 6_0_X PR: https://github.com/appcelerator/titanium_mobile/pull/8931\r\n\r\nTo test,\r\n\r\n1. Run {{ti info -t android}} and {{ti info -t android -o json}} and verify output\r\n2. Run {{ti build -p android}}\r\n3. Run {{ti build -p android --device-id foo}}\r\n4. Run {{ti build -p android --device-id }}\r\n5. Run {{ti build -p android --build-only}}\r\n6. Run {{ti build -p android -T device --build-only}}\r\n7. Run {{ti build -p android -T dist-playstore}}", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2017-04-05T18:35:18.000+0000", "updated": "2017-04-05T22:47:27.000+0000" }, { "id": "417153", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified & merged the fix in the above mentioned PR's, waiting for the build from CI to close the ticket.", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-04-10T23:27:35.000+0000", "updated": "2017-04-10T23:27:35.000+0000" }, { "id": "417847", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified the fix in 6.0.4.v20170420100617.\r\nClosing.\r\n\r\n", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-04-21T17:54:42.000+0000", "updated": "2017-04-21T17:54:42.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }