Tracking more than 100 simultaneous geofences with the new Android API

陌路散爱 提交于 2019-11-29 04:12:20

问题


I have around 3500 geographical points of interest in an area of 9000 km^2, and I want my app to run in the background and notify the user whenever he or she is in proximity to any of the aforementioned points.

The new Geofence API introduced during Google I/O 2013 seemed perfect for the job, especially as its optimized for battery life, but I can't seem to register more than 100 geofences before I get the status code GEOFENCE_TOO_MANY_GEOFENCES (using a modified version of the demo app).

Is it possible to increase this limit? Perhaps through some setting or API?


回答1:


I'd recommend downloading all points to a sqlite db on the device. Then find the closest 99 points with something like this: SQlite Getting nearest locations (with latitude and longitude) and register those points with Android to monitor.

Then set a "significant change" geofence that you can use to monitor if the user's location has changed enough that when they exit this geofence, you should reload the closest points of interest.




回答2:


I think there is a limit of 100 geofences. I am not sure if this is per application or per application per user. I have not test this idea, but can you register the first 100 locations closest to your location?



来源:https://stackoverflow.com/questions/17353150/tracking-more-than-100-simultaneous-geofences-with-the-new-android-api

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!