1

我使用带有新 API 2.0 的 GoogleMaps 开发了一个应用程序,该应用程序正在运行并且一切正常,基本上它显示了用户的位置和一些标记,这些标记划定了意大利某些城市的禁区。当用户接近一个制造商时,我想添加一个声音,但似乎没有方法可以与地图上添加的对象进行交互。我的想法,一个非常糟糕的想法,是使用用户的坐标和标记坐标矩阵,然后检查用户附近的位置;缓慢而糟糕,我可以看到它。

所以我的问题是:

有没有一种通用的方法来检查用户何时靠近 POI 并向该侦听器添加声音?

提前致谢

4

1 回答 1

0

希望我的回答对你有所帮助。:)

使用 LocationManager 和 LocationListener。您可以实时获取用户的gps位置。操作系统将“Location”推送到您应该为 LocationListener 实现的“onLocationChanged()”。检查听众位置和标记的纬度/经度之间的距离。当用户接近 500m 时播放声音(也许..)

仅供参考,您可以同时请求 GPS 和网络定位。您可能知道网络位置不准确。如果您需要更精确的用户位置,请使用 GPS 位置。

mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 5000, 0f, mLocationListenerGPS);
mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 5000, 0f, mLocationListenerNetwork);

如果您不需要定位,请不要忘记删除请求。

mLocationManager.removeUpdates(mLocationListenerGPS);
mLocationManager.removeUpdates(mLocationListenerNetwork);

请勿长时间使用定位。定位使用巨大的电池。

于 2013-04-25T04:55:28.827 回答