{ "id": "155433", "key": "TIMOB-20522", "fields": { "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "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": "19957", "description": "", "name": "Release 7.1.0", "archived": false, "released": true, "releaseDate": "2018-03-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2018-02-21T21:25:26.000+0000", "created": "2016-03-05T13:06:58.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [ { "id": "56399", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "171354", "key": "TIMOB-25887", "fields": { "summary": "Android: Ti.Geolocation - Exception when calling Ti.Geolocation.hasLocationPermissions()", "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": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2021-03-30T09:11:20.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" } ], "attachment": [], "flagged": false, "summary": "FusedLocationProvider on Android", "creator": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "subtasks": [], "reporter": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "environment": null, "closedSprints": [ { "id": 920, "state": "closed", "name": "2017 Sprint 14 SDK", "startDate": "2017-07-02T16:29:41.455Z", "endDate": "2017-07-16T16:29:00.000Z", "completeDate": "2017-07-17T14:39:47.328Z", "originBoardId": 114 }, { "id": 1000, "state": "closed", "name": "2018 Sprint 04 SDK", "startDate": "2018-02-12T04:23:01.913Z", "endDate": "2018-02-26T04:23:00.000Z", "completeDate": "2018-02-26T19:36:01.769Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "378862", "author": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "body": "Hello, Thanks for reaching out. This is a valid new feature request. Our engineers will look into it for further process.", "updateAuthor": { "name": "sdarda", "key": "sdarda", "displayName": "Sharif AbuDarda", "active": false, "timeZone": "Asia/Dhaka" }, "created": "2016-03-06T19:34:54.000+0000", "updated": "2016-03-06T19:34:54.000+0000" }, { "id": "380131", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "I've noticed a lot more developers are watching this ticket. I wonder if it would be possible to increase the priority on this feature?", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2016-03-18T18:43:26.000+0000", "updated": "2016-03-18T18:43:26.000+0000" }, { "id": "385733", "author": { "name": "jfalcone", "key": "jfalcone", "displayName": "Joe Falcone", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "jfalcone", "key": "jfalcone", "displayName": "Joe Falcone", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2016-05-15T07:33:38.000+0000", "updated": "2016-05-15T07:33:38.000+0000" }, { "id": "385735", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "@Joe it dosen't; This ticket is simply the newer/better way of getting the geolocation of the user on Android.", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2016-05-15T13:06:48.000+0000", "updated": "2016-05-15T13:06:48.000+0000" }, { "id": "387397", "author": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "body": "[~underlabs] Just wondering, which module are you using that provides the FusedLocationProvider?", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-06-02T08:20:09.000+0000", "updated": "2016-06-02T08:20:09.000+0000" }, { "id": "387415", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "It was a paid (closed) module a few years ago. The developer offers no support anymore. \r\n", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-06-02T12:50:47.000+0000", "updated": "2016-06-02T13:09:14.000+0000" }, { "id": "387416", "author": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "body": "I have developed this module with FusedLocationProvider. It should not be distributed, please remove the Dropbox link.\r\n", "updateAuthor": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "created": "2016-06-02T12:52:58.000+0000", "updated": "2016-06-02T12:52:58.000+0000" }, { "id": "387417", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "It's been removed from Dropbox. \r\nHowever, @Danny, maybe you can help on this ticket since you developed the module.", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2016-06-02T13:17:51.000+0000", "updated": "2016-06-02T13:18:42.000+0000" }, { "id": "387422", "author": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "body": "I haven't updated the module since SDK 5.0.2 ... will do it probably next month. The AppC team is much more experienced in native development. I don't think they need my help to implement this feature request.", "updateAuthor": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "created": "2016-06-02T15:41:44.000+0000", "updated": "2016-06-02T15:41:44.000+0000" }, { "id": "396823", "author": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "body": "It seems this ticket has no attention. Is it possible to increase priority for this ticket? ", "updateAuthor": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "created": "2016-09-21T14:40:11.000+0000", "updated": "2016-09-21T14:40:11.000+0000" }, { "id": "396825", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "It is a feature-ticket and our Android-team currently has priority-bugfixes to work on, so we can't schedule it, yet.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2016-09-21T14:46:11.000+0000", "updated": "2016-09-21T14:46:11.000+0000" }, { "id": "403136", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "Can't update one of our bigger Apps to 6.x due to one closed-module which uses Fused-Location.\r\n\r\nI agree with [~Topener] this should be a high priority, as this is the proper way to implement Geolocation. The current API Ti uses on Android is far too old and not recommended.", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2016-12-11T13:42:50.000+0000", "updated": "2016-12-11T13:44:39.000+0000" }, { "id": "405073", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "Any update on this 'really important' feature?", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2017-01-23T16:23:34.000+0000", "updated": "2017-01-23T16:23:34.000+0000" }, { "id": "405074", "author": { "name": "macasfaj", "key": "macasfaj", "displayName": "Miguel Ángel Castaño", "active": true, "timeZone": "Europe/Berlin" }, "body": "+1", "updateAuthor": { "name": "macasfaj", "key": "macasfaj", "displayName": "Miguel Ángel Castaño", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-01-23T16:25:26.000+0000", "updated": "2017-01-23T16:25:26.000+0000" }, { "id": "405082", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Hello all,\r\nThis sprint we will scope the work we think will be required for implementation. Once I have that, we can schedule it, but at this point I can't say when that will be. Stay tuned.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-01-23T17:43:31.000+0000", "updated": "2017-01-23T17:43:31.000+0000" }, { "id": "405901", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "After two full days trying to get this running, I do have an Android Module https://github.com/yozef/FusedLocation\r\n\r\n(basically my first Android Module & playing around in Java).\r\n\r\nThis Module works on it's own in a Ti App; However this Module *does Not work with ti.map* due to google-play-services.jar having similar classes in both modules.\r\n\r\nI see two options:\r\n- Maybe this module can help implement it in Ti.Geolocation by the AppC Devs\r\n- Maybe someone can figure out a way to fix google-play-services of FusedLocation (pull-request) in order to with Ti.Map in the same Ti Android App.", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2017-01-31T21:45:13.000+0000", "updated": "2017-01-31T21:47:56.000+0000" }, { "id": "405902", "author": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "body": "Looks like you have debugged my module, which tool did you use?", "updateAuthor": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-01-31T21:52:12.000+0000", "updated": "2017-01-31T21:52:12.000+0000" }, { "id": "405903", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "Hi Danny, I worked on it with Rainer Knoterich. \r\nCan you help with google-play-services issue?", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2017-01-31T21:56:09.000+0000", "updated": "2017-01-31T21:56:09.000+0000" }, { "id": "405904", "author": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "body": "Even the log messages are in the same place as in my original code, seriously?!", "updateAuthor": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-01-31T21:59:54.000+0000", "updated": "2017-01-31T21:59:54.000+0000" }, { "id": "405907", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "What log Messages? Your original module hasn't been touched in over 2 years mate.\r\n\r\nThe issue we have is this, when used with other Android Module (such as Ti.Map):\r\n```\r\nRunning FusedLocation with ti.map will throw errors:\r\n[ERROR] : Failed to run dexer:\r\n[ERROR] : \r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzrn;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzro;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzrl;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzsv;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzsu;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzrm;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/common/zze;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/common/zzc;\r\n[ERROR] : Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/common/ConnectionResult;\r\n```\r\nIf you can help, I'm on TiSlack", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2017-01-31T22:10:35.000+0000", "updated": "2017-01-31T22:10:35.000+0000" }, { "id": "405910", "author": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "body": "My module works perfect with Ti SDK 6.0. It's quite simple, just use the correct Google Play lib.", "updateAuthor": { "name": "crossbits", "key": "crossbits", "displayName": "Danny Pham", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-01-31T22:21:12.000+0000", "updated": "2017-01-31T22:21:12.000+0000" }, { "id": "406056", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "Just released FusedLocation android module: https://github.com/yozef/FusedLocation\r\n\r\nIt returns a location object, exactly like how iOS would return the location object (also has some hardcoded values like DistanceFilter, etc; )\r\n{code:title=location event|borderStyle=solid}\r\n{\"type\":\"location\",\"success\":true,\"provider\":\"fused\",\"coords\":{\"bearing\":44,\"latitude\":65.9667017,\"timestamp\":1486006304000,\"speed\":0,\"accuracy\":1,\"longitude\":-18.5312533}}\r\n{code}", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2017-02-01T17:33:56.000+0000", "updated": "2017-02-01T17:34:09.000+0000" }, { "id": "415462", "author": { "name": "ygbr", "key": "ygbr", "displayName": "Ygor Lemos", "active": true, "timeZone": "America/Sao_Paulo" }, "body": "+1 for this ticket since it brings better parity with iOS and it is the recommended native way of implementing location-awareness on native Android apps.", "updateAuthor": { "name": "ygbr", "key": "ygbr", "displayName": "Ygor Lemos", "active": true, "timeZone": "America/Sao_Paulo" }, "created": "2017-03-23T22:35:23.000+0000", "updated": "2017-03-23T22:35:23.000+0000" }, { "id": "423900", "author": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "body": "I see this one is keep being pushed back. Is there a reason for this? For when is it actually planned?", "updateAuthor": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-07-11T12:35:59.000+0000", "updated": "2017-07-11T12:35:59.000+0000" }, { "id": "428553", "author": { "name": "greg@snapithd.com", "key": "greg@snapithd.com", "displayName": "greg", "active": true, "timeZone": "Pacific/Auckland" }, "body": "Has this one ended up in the too hard pile as there has been no activity on this for months.", "updateAuthor": { "name": "greg@snapithd.com", "key": "greg@snapithd.com", "displayName": "greg", "active": true, "timeZone": "Pacific/Auckland" }, "created": "2017-09-28T03:18:27.000+0000", "updated": "2017-09-28T03:18:27.000+0000" }, { "id": "429903", "author": { "name": "joshlambertmobile", "key": "joshlambertmobile", "displayName": "joshlambertmobile", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Any update on this being implemented?", "updateAuthor": { "name": "joshlambertmobile", "key": "joshlambertmobile", "displayName": "joshlambertmobile", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-10-31T17:14:43.000+0000", "updated": "2017-10-31T17:14:43.000+0000" }, { "id": "430829", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "This module stopped working after Ti 6.1.2.GA due to Google Play Services conflicts & I can't seem to get it to work with latest/updated .jar.\r\nCan we bump the priority on this ticket please, since we can't update to the latest Ti SDK for Android builds.", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2017-11-16T16:55:40.000+0000", "updated": "2017-11-16T16:55:40.000+0000" }, { "id": "431419", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "master: https://github.com/appcelerator/titanium_mobile/pull/9634", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-11-29T00:00:23.000+0000", "updated": "2017-11-29T00:00:23.000+0000" }, { "id": "431679", "author": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "body": "Love that there is a PR for this. Is there any way this can get backported in the 6.# branch? A 6.4 version for example.", "updateAuthor": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-12-04T16:59:21.000+0000", "updated": "2017-12-04T16:59:21.000+0000" }, { "id": "434535", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "7_1_X: https://github.com/appcelerator/titanium_mobile/pull/9826", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-02-15T20:14:21.000+0000", "updated": "2018-02-15T20:14:21.000+0000" }, { "id": "434595", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "FR Passed for both master & backport.\r\n\r\nWaiting for CR.", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-02-16T23:09:16.000+0000", "updated": "2018-02-16T23:09:16.000+0000" }, { "id": "434732", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR's merged.", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-02-21T21:25:11.000+0000", "updated": "2018-02-21T21:25:11.000+0000" }, { "id": "435267", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified the fix in SDK 7.2.0.v20180305152636 & 7.1.0.v20180306061214.\r\n\r\nClosing.\r\n\r\nStudio Ver: 5.0.0.201712081732\r\nOS Ver: 10.13.2\r\nXcode Ver: Xcode 9.2\r\nAppc NPM: 4.2.12\r\nAppc CLI: 7.0.2\r\nDaemon Ver: 1.0.1\r\nTi CLI Ver: 5.0.14\r\nAlloy Ver: 1.11.0\r\nNode Ver: 8.9.1\r\nNPM Ver: 5.5.1\r\nJava Ver: 1.8.0_101\r\nDevices: ⇨ google Nexus 5 — Android 6.0.1\r\n⇨ google Nexus 6P — Android 8.0.0", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-03-06T22:03:43.000+0000", "updated": "2018-03-06T22:03:43.000+0000" }, { "id": "436104", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "Has anybody been able to run this module and have Location Update every 5 meters.\r\n\r\nSeems that regardless of the LocationProvider and LocationRules on Android, the geolocation triggers only after a fixed 30 seconds time laps.\r\n\r\nI assume it's due to the hardcoded final consts here: https://github.com/garymathews/titanium_mobile/blob/c4cc7bef37b8f48d3f23e5536493ece4b2b0fd0e/android/modules/geolocation/src/java/ti/modules/titanium/geolocation/GeolocationModule.java#L184\r\n\r\nThis is the Code I am trying to test on Simulator, with Ti 7.1.x the Fused Location should adhere to the settings:\r\n```\r\n\tTi.Geolocation.accuracy = Ti.Geolocation.ACCURACY_HIGH;\r\n\t// Location Provider\r\n\tgpsProvider = Ti.Geolocation.Android.createLocationProvider({ // Outside the Airport\r\n\t name: Ti.Geolocation.PROVIDER_GPS, minUpdateDistance: 1\r\n\t});\r\n\twifiProvider = Ti.Geolocation.Android.createLocationProvider({ // Inside the Airport\r\n\t name: Ti.Geolocation.PROVIDER_NETWORK, minUpdateDistance: 1, minUpdateTime: 1\r\n\t});\r\n\tTi.Geolocation.Android.addLocationProvider(gpsProvider);\r\n\tTi.Geolocation.Android.addLocationProvider(wifiProvider);\r\n\t\r\n\t// Trigger Rules\r\n\tvar gpsRule = Ti.Geolocation.Android.createLocationRule({\r\n provider: Ti.Geolocation.PROVIDER_GPS,\r\n\t accuracy: 65, maxAge: 1, minAge: 1\r\n\t});\r\n\tvar wifiRule = Ti.Geolocation.Android.createLocationRule({\r\n provider: Ti.Geolocation.PROVIDER_NETWORK,\r\n\t accuracy: 7, maxAge: 1, minAge: 1\r\n\t});\r\n\tTi.Geolocation.Android.addLocationRule(gpsRule);\r\n\tTi.Geolocation.Android.addLocationRule(wifiRule);\r\n...\r\nif (Ti.Geolocation.hasLocationPermissions()) \r\n Ti.Geolocation.addEventListener('location', handleLocation); // traces out every 30 seconds the location\r\n```\r\nThis fires `location` event every 30 seconds, whereas it should update every provider settings and/or LocationRules settings.\r\n\r\nMaybe I'm missing an example to show this in action?", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2018-03-29T18:17:56.000+0000", "updated": "2018-03-29T18:17:56.000+0000" }, { "id": "436106", "author": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "body": "My mistake... it Works!\r\n\r\nAll I needed was to make sure this was added:\r\nTi.Geolocation.Android.manualMode = true;", "updateAuthor": { "name": "underlabs", "key": "underlabs", "displayName": "Joseph Sachs", "active": true, "timeZone": "America/Montreal" }, "created": "2018-03-29T19:06:03.000+0000", "updated": "2018-03-29T19:06:03.000+0000" }, { "id": "458493", "author": { "name": "peaceofmind7", "key": "peaceofmind7", "displayName": "john adamis", "active": true, "timeZone": "Europe/Helsinki" }, "body": "Guys, I believe this part of code is really poorly documented. The only reference is : \r\n\r\n\"Starting at TiSDK 7.1.0.GA there is support for FusedLocationProvider. To enable this, the only thing you need to do is include the Ti.PlayServices module in your app. This will enable battery efficient geolocation API's in your app.\"\r\n\r\nIn my case this was NOT the only changed required. \r\n\r\nAt manualMode you say : \r\n\r\n\"Manual mode gives developers low-level control of location updates, including enabling individual location providers and filtering updates, for the best combination of accuracy and battery life. Manual mode is used when the Titanium.Geolocation.Android.manualMode flag is set to true. In manual mode, the accuracy property is not used, and all configuration is done through the Titanium.Geolocation.Android module.\"\r\n\r\nFor FuseLocation however even though manualMode must be set, accuracy property needs to be set for having high accuracy values. \r\n\r\nAlso accuracy has to be set AFTER manualMode, otherwise minUpdateDistance and minUpdate values are not respected. \r\n\r\nAll these are not mentioned anywhere at documentation. \r\n\r\nAlso I couldn't find a way to use the old location provider but for removing play services library. It would be convenient to have this as a pref because someone might want to keep the old library but add play services for other features (like maps or firebase)", "updateAuthor": { "name": "peaceofmind7", "key": "peaceofmind7", "displayName": "john adamis", "active": true, "timeZone": "Europe/Helsinki" }, "created": "2021-03-29T23:24:14.000+0000", "updated": "2021-03-29T23:24:14.000+0000" }, { "id": "458494", "author": { "name": "michael", "key": "michael", "displayName": "Michael Gangolf", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~peaceofmind7] Valid points! Documentation can always be improved to help others. \r\n\r\nYou could either add some valid information to\r\nhttps://github.com/appcelerator/titanium_mobile/tree/master/apidoc/Titanium/Geolocation\r\nor start a conversation at:\r\nhttps://github.com/appcelerator/titanium_mobile/discussions\r\nso others can join in and help in finding the best text for the documentation.\r\n\r\nI only use Fused it in non-manual mode and it \"just works\" :) But for other use cases it might be very useful to know those parts!", "updateAuthor": { "name": "michael", "key": "michael", "displayName": "Michael Gangolf", "active": true, "timeZone": "Europe/Berlin" }, "created": "2021-03-30T09:11:20.000+0000", "updated": "2021-03-30T09:11:20.000+0000" } ], "maxResults": 40, "total": 40, "startAt": 0 } } }