2011-04-11 124 views
1

我正在使用Appcelerator Titanium来构建我的移动应用程序(iphone + android)。 我在他们的文档中发现了titanium.geolocation,但是我找不到任何方法,例如我们用于在iOS中查找的“startMonitoringForRegion”或“startMonitoringSignificantLocationChanges”。但它具有定义为“ERROR_REGION_MONITORING_DENIED”的属性,所以必须有一些区域监视方法。Appcelerator Titanium startMonitoringForRegion

所以它没有在文档中定义或我错过了什么。我试过谷歌搜索,但无法找到它。

基本上所有我想要的是当用户进入特定区域时,即使当应用程序在后台(就像我以前用iOS中的startMonitoringForRegion做到的那样),向用户显示一些警报。钛是可能的。请帮忙。

+0

我仍然无法找到任何完美的答案..可能有人来自appcelerator或专家与此..请帮助 – 2011-04-22 06:02:46

回答

1

“对于那些不需要定位事件的常规流的应用程序,你应该考虑使用startMonitoringSignificantLocationChanges方法来启动事件的交付这种方法更适合于大多数只需要初始用户位置修正的应用程序,只有在用户移动了很长的距离时才需要更新,该接口只在检测到设备关联单元塔的变化时才会提供新的事件,在更少的频率更新和显着更好的动力我们年龄。”

根据这个标准,苹果定义它似乎所有你需要的是设置Titanium.Geolocation.distanceFilter,以便将事件继续开火每*米

有,如果你检查出的KS上没有文档直接然而资源你会看到geolocation.js文件使用了几个没有记录的功能。我不得不基本上复制它,并删除我不需要的应用程序。

https://github.com/appcelerator/KitchenSink/blob/master/Resources/examples/geolocation.js#L345

startMonitoringForRegion应该是相同的想法,但你需要设置accuracy constant在本documentation定义。

+0

是的,我肯定可以设置所有这些..但事情是“startMonitoringSignificantLocationChanges”和“startMonitoringForRegion”在后台唤醒应用程序,即使应用程序已经被占用,并且设备进入监控区域...但地理位置监听器 – 2011-04-19 12:13:02

+0

的情况并非如此,我只是意识到,手机信号塔可能会在另一个1米内变化,或者可能在30米后发生变化,这取决于网络的存在情况,所以我不能只设置距离过滤器并实现功能 – 2011-04-19 14:02:55

+0

https://github.com/appcelerator/KitchenSink/ blob/master/Resources/bg.js至于你的第一个评论,你可以把TiGeo事件放在后台,但对于你的第二个,这似乎是一个错误的解决方案也... – bh88 2011-04-19 16:07:40

相关问题