{ "id": "150876", "key": "TIMOB-19444", "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": "16925", "description": "WatchKit Support--all going into 5.0 now", "name": "Release 5.0.0", "archived": true, "released": true, "releaseDate": "2015-09-16" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2015-09-02T04:17:12.000+0000", "created": "2015-09-01T08:17:23.000+0000", "epic": { "id": 149396, "key": "TIMOB-19145", "name": "iOS: iOS 9 Updates", "summary": "iOS: iOS9 Updates", "color": { "key": "color_1" }, "done": false }, "priority": { "name": "High", "id": "2" }, "labels": [ "iOS9" ], "versions": [], "issuelinks": [], "assignee": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2015-10-06T23:23:46.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": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "h6.Problem\r\nWhen attempting to use Ti.Geolocation.forwardGeocoder in iOS 9 it never completes. On iOS 8 this works just fine. \r\n\r\nh6.Reproduce:\r\n1. Simply run the following code\r\n{code}\r\nTi.API.error('fwdGeocode'); \r\nTi.Geolocation.forwardGeocoder('94111', function(e) { \r\nTi.API.error('fwdGeocode resp'); \r\nTi.API.error('appcel resp:' + JSON.stringify(e)); \r\n});\r\n{code}\r\n\r\nh6.Expect Result:\r\nWorks well in 3.5.1 SDK, the output is:\r\n{code}\r\n[ERROR] : fwdGeocode resp \r\n[ERROR] : appcel resp:{\"code\":0,\"longitude\":\"-122.400399983355\",\"latitude\":\"37.7973885857828\",\"accuracy\":\"1\",\"success\":true} \r\n{code}\r\n\r\nh6.Actual Result:\r\nThe latest beta SDK, the output is:\r\n{code}\r\n[ERROR] : fwdGeocode resp\r\n{code}", "attachment": [], "flagged": false, "summary": "iOS9: Ti.Geolocation.forwardGeocoder does not work any more", "creator": { "name": "sliang", "key": "sliang", "displayName": "Shuo Liang", "active": true, "timeZone": "Asia/Harbin" }, "subtasks": [], "reporter": { "name": "sliang", "key": "sliang", "displayName": "Shuo Liang", "active": true, "timeZone": "Asia/Harbin" }, "environment": "Ti SDK 5.0.0.v20150829212027\r\niOS 9", "closedSprints": [ { "id": 481, "state": "closed", "name": "2015 Sprint 18 SDK", "startDate": "2015-08-29T00:30:25.440Z", "endDate": "2015-09-12T00:30:00.000Z", "completeDate": "2015-09-14T05:24:05.135Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "361968", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "The error is happening because of the iOS9 app transport security \" App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.\". The calling API is \"http://api.appcelerator.net/p/v1/geo\". Two possible ways to fix:\r\n\r\n1. Also wildcard http:// calls on the appcelerator.com domain\r\n2. Update the URL in {{GeolocationModule.m}} to https://\r\n\r\n[~cng] [~cbarber], thoughts?", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-09-01T19:25:44.000+0000", "updated": "2015-09-01T19:25:44.000+0000" }, { "id": "361969", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "First off, ATS is off by default. You have to opt-in by manually adding the {{NSAppTransportSecurity}} to the Info.plist/tiapp.xml. If they opt-in, then we whitelist all appcelerator.com subdomains. However, I noticed that we default {{NSExceptionAllowsInsecureHTTPLoads}} to false. I sorta think we should leave it false as we should never connect to a non-ssl appcelerator.com site. But if someone had a webview and went to appcelerator.com over http, it would fail, so I could be convinced that it should be true by default.\r\n\r\nEither way, we should definitely update GeolocationModule.m to use https. Perhaps grep the code for any other requests like this.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-09-01T19:33:36.000+0000", "updated": "2015-09-01T19:33:36.000+0000" }, { "id": "361975", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Fixed it for iOS9, but neither {{forwardGeocoder}} nor {{reverseGeocoder}} are currently working, since the success delegate {{onLoad}} is not called any more. It seems to be a problem with the latest commits made on the {{APSHTTPClient}}. Will hold this until [~cng] is back.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-09-01T20:10:41.000+0000", "updated": "2015-09-01T20:10:41.000+0000" }, { "id": "362021", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "PR of [~cng] (https://github.com/appcelerator/titanium_mobile/pull/7114) tested & merged. Thank you! \r\n\r\n[~sliang] can you confirm using the latest master?", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-09-02T04:13:10.000+0000", "updated": "2015-09-02T04:13:10.000+0000" }, { "id": "362022", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "backport PR: https://github.com/appcelerator/titanium_mobile/pull/7115", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-09-02T04:17:40.000+0000", "updated": "2015-09-02T04:17:40.000+0000" }, { "id": "362024", "author": { "name": "sliang", "key": "sliang", "displayName": "Shuo Liang", "active": true, "timeZone": "Asia/Harbin" }, "body": "Ok, Confirmed. Waiting for customer's verify. ", "updateAuthor": { "name": "sliang", "key": "sliang", "displayName": "Shuo Liang", "active": true, "timeZone": "Asia/Harbin" }, "created": "2015-09-02T04:33:10.000+0000", "updated": "2015-09-02T04:33:10.000+0000" }, { "id": "365999", "author": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "body": "Verified as fixed, ran the code from step 1. and built to device, received following: \r\n\r\n{code:java}\r\n[ERROR] : fwdGeocode resp\r\n[ERROR] : appcel resp:{\"success\":true,\"code\":0,\"latitude\":\"37.7974\",\"accuracy\":\"1\",\"longitude\":\"-122.4001\"}\r\n{code}\r\n\r\nOSX El Capitan 10.11\r\niOS 9\r\nStudio: 4.3.1.201509302304\r\nTi SDK: 5.0.2.GA\r\nAppc NPM: 4.2.0\r\nAppc CLI: 5.0.2", "updateAuthor": { "name": "htbryant", "key": "htbryant", "displayName": "Harry Bryant", "active": true, "timeZone": "Europe/London" }, "created": "2015-10-06T23:23:30.000+0000", "updated": "2015-10-06T23:23:30.000+0000" } ], "maxResults": 8, "total": 8, "startAt": 0 } } }