{ "id": "133335", "key": "TIMOB-17344", "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": "16570", "description": "Release 3.3.1", "name": "Release 3.3.1", "archived": true, "released": false }, { "id": "15972", "description": "Release 3.4.0", "name": "Release 3.4.0", "archived": false, "released": true, "releaseDate": "2014-09-28" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2014-07-18T14:05:38.000+0000", "created": "2014-07-17T18:42:15.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "module_cli", "qe-manualtest" ], "versions": [ { "id": "15422", "description": "Release 3.3.0", "name": "Release 3.3.0", "archived": false, "released": true, "releaseDate": "2014-07-16" } ], "issuelinks": [ { "id": "39407", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "133511", "key": "AC-1223", "fields": { "summary": "Project won't start. It appears to hang forever during build", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "39386", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "133510", "key": "AC-1496", "fields": { "summary": "Genymotion causing Android SDK not to load.", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "39599", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "133444", "key": "AC-1675", "fields": { "summary": "[Android SDK Home] No Android SDKs were found under the specified SDK location", "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" } }, "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": "2014-08-19T18:18: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" }, { "id": "10207", "name": "Tooling" } ], "description": "h2. The Problem\r\n\r\nIt's possible for a Genymotion emulator's IP address property to not be properly removed when the Genymotion emulator is shutdown. The Titanium CLI expects that the IP address will only be listed if the Genymotion emulator is running. When it sees the IP address, it will try to connect to the Genymotion emulator and check if it has Google APIs installed and an error occurs.\r\n\r\nThe root problem is the error is not properly handled and causes the build/info command to crash or spin indefinitely.\r\n\r\nh2. The Workaround\r\n\r\nShutdown all Genymotion emulators. From the command line, run:\r\n\r\n{code}\r\nvboxmanage list vms\r\n{code}\r\n\r\nFor each VM, copy the uuid and past it into the following:\r\n\r\n{code}\r\nvboxmanage guestproperty enumerate \r\n{code}\r\n\r\nLook for the {{androvm_ip_management}} property. If it exists, remove it:\r\n\r\n{code}\r\nvboxmanage guestproperty delete androvm_ip_management\r\n{code}\r\n\r\nh2. The Proper Fix\r\n\r\nTo fix this issue the right way, the Genymotion library needs to handle error messages when the adb shell command fails while attempting to detect the presence of Google APIs.", "attachment": [], "flagged": false, "summary": "CLI: Android: Genymotion emulators detected as running when they are not", "creator": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "subtasks": [], "reporter": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "environment": null, "closedSprints": [ { "id": 153, "state": "closed", "name": "2014 Sprint 14 Tooling", "startDate": "2014-07-07T21:56:43.545Z", "endDate": "2014-07-19T00:00:00.000Z", "completeDate": "2014-07-21T15:58:25.985Z", "originBoardId": 121 } ], "comment": { "comments": [ { "id": "314697", "author": { "name": "bgrantges@appcelerator.com", "key": "bgrantges", "displayName": "Bert Grantges", "active": false, "timeZone": "America/Chicago" }, "body": "I am seeing this when trying to run on an Android device as well", "updateAuthor": { "name": "bgrantges@appcelerator.com", "key": "bgrantges", "displayName": "Bert Grantges", "active": false, "timeZone": "America/Chicago" }, "created": "2014-07-17T19:34:21.000+0000", "updated": "2014-07-17T19:34:21.000+0000" }, { "id": "314715", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Master: https://github.com/appcelerator/titanium_mobile/pull/5912\r\n3_3_X: https://github.com/appcelerator/titanium_mobile/pull/5913\r\n\r\nTo test, you need to mimic a stale Genymotion IP address. The easiest way to do this is:\r\n\r\n{code}\r\nvboxmanage list vms\r\n{code}\r\n\r\nPick a UUID, then paste it into:\r\n\r\n{code}\r\nvboxmanage guestproperty set androvm_ip_management 192.168.56.166\r\n{code}\r\n\r\nThen perform a build:\r\n\r\n{code}\r\nti build -p android\r\n{code}\r\n\r\nNOTE: you will probably want to temporarily move or permanently delete all AVDs (~/.android/avd) and all Genymotion emulators EXCEPT a single Genymotion emulator which you'll use above.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2014-07-17T21:52:01.000+0000", "updated": "2014-07-17T21:52:01.000+0000" }, { "id": "314716", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "[~bgrantges] Would you mind applying the small changes from one of the PRs above directly to your 3.3.0.GA SDK code and see if that solves the problem? Thanks!", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2014-07-17T21:55:45.000+0000", "updated": "2014-07-17T21:55:45.000+0000" }, { "id": "314790", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "Following the steps outlined by Chris, the app is built, the Genymotion emulator is launched, and the app installed/run as expected", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2014-07-18T14:05:38.000+0000", "updated": "2014-07-18T14:05:38.000+0000" }, { "id": "314839", "author": { "name": "bgrantges@appcelerator.com", "key": "bgrantges", "displayName": "Bert Grantges", "active": false, "timeZone": "America/Chicago" }, "body": "[~cbarber] I tried both the work around and patching the SDK.\r\n\r\nUnfortunately now i can not detect my Android devices at all - nor genymotion!\r\n\r\nHere was the last console message i received prior to applying the patches etc.\r\n\r\nhttps://gist.github.com/grantges/c90c1382c26cd79331f6\r\n\r\nAfter applying the patch, and performing a ti info (after which my devices no longer were detected by CLI or Studio) i output the following `ti info` and `adb devices`\r\n\r\nhttps://gist.github.com/grantges/1b95e8993f4a95fb656d", "updateAuthor": { "name": "bgrantges@appcelerator.com", "key": "bgrantges", "displayName": "Bert Grantges", "active": false, "timeZone": "America/Chicago" }, "created": "2014-07-18T17:48:12.000+0000", "updated": "2014-07-18T17:50:08.000+0000" }, { "id": "314841", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "Bert, in your second Gist, I see an Android emulator (look for Android AVDs around line 230). Using the pull request from Chris, I see all my AVDs and Genymotion emulators. {{adb devices}} will show only connected devices or running emulators, and as we all know ADB hangs frequently. Make sure you've done {{adb kill-server}} and {{adb start-server}} before listing the devices, and make sure that the device is authorized to your computer.", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2014-07-18T17:56:08.000+0000", "updated": "2014-07-18T17:56:08.000+0000" }, { "id": "314882", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "[~bgrantges] Regarding your first gist, you need to apply the attached PR to your SDK. My fix addresses the callback issue.\r\n\r\nAs for the second gist, you need to select a Titanium SDK. For best results, select 3.3.0.GA:\r\n\r\n{code}\r\nti sdk select 3.3.0.GA\r\n{code}\r\n\r\nOnce you have selected SDK 3.3.0.GA and patched the SDK, everything should work fine.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2014-07-18T21:05:11.000+0000", "updated": "2014-07-18T21:05:11.000+0000" }, { "id": "319312", "author": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "body": "Verified fix on:\r\n\r\nMac OSX 10.9.4\r\nAppcelerator Studio, build: 3.4.0.201408051600\r\nTitanium SDK build: 3.4.0.v20140815142514, 3.3.0.GA\r\nTitanium CLI, build: 3.4.0-dev, 3.3.0\r\nAlloy: 1.4.1\r\nGenymotion emulator 4.4.2\r\n\r\n\r\nUsed the above test steps to mimic a stale Genymotion IP address, built KS to the emulator and when using the latest SDK(3.4.0.v20140815142514) and CLI(3.4.0-dev) the app built and Genymotion loaded.\r\n\r\nReverted back to 3.3.0.GA SDK and 3.3.0 CLI to check using the same steps, there was an error thrown which was the same as in Bert's comment.\r\n\r\nClosing ticket.", "updateAuthor": { "name": "eharris", "key": "eharris", "displayName": "Ewan Harris", "active": true, "timeZone": "Europe/Dublin" }, "created": "2014-08-19T18:16:04.000+0000", "updated": "2014-08-19T18:16:04.000+0000" } ], "maxResults": 8, "total": 8, "startAt": 0 } } }