使用一个LocationClient进行当前位置和地理围栏或使用两个不同的LocationClient

时间:2013-09-11 12:39:55

标签: android location android-geofence location-client

我创建了一个名为LocationHelper的类来获取手机的当前位置。有了这些信息,我会显示商店列表以及到我当前位置的距离。我在事件onLocationChanged上使用了一个LocationClient和LocationRequest,我发送了一个BroadcastIntent,在我的活动中,我做了我需要的事情。它运作正常。

现在,对于我的应用程序的其他功能,我需要使用Geofence。 当手机用户靠近商店时,想法是显示通知 我的第一个方法是编写另一个名为LocationHelperGeofence的LocationHelper。 使用官方教程,我完成了课程。它运作正常

两个类都可以,但每个类中有2个LocationClient。此外,在每个课程中,我都会检查Google Play服务是否可用,并重复使用其他代码。

我的问题是:

这种方法对吗? 这是最好的工作方式有2个类与2个LocationClients?或者最好只有一个类来获取当前位置并使用地理围栏?

谢谢,对不起,如果我的英语不是最好的

1 个答案:

答案 0 :(得分:0)

根据我的经验,您不能在同一个类中拥有2个LocationClient实例,主要是因为,例如,如何为两者覆盖onConnected方法?在java中你不能这样做。

所以我的建议是在不同的类中与客户端进行连接。

在此处下载示例:http://developer.android.com/training/location/activity-recognition.html

您将找到您正在寻找的内容。