2010-07-19 76 views
0

怀疑使用位置侦听器

我已经在启动时使用LastKnownLoaction活动的我的应用程序来获取位置,如果它返回null然后我注册一个位置监听器为gps和网络providers.After请求监听器侦听任何位置更改我切换到使用startActivity主要活动页面。进一步在启动Actyivity的两个监听器中的onLocation我试图获取位置,如果找到任何值,然后我尝试将它们存储在首选项中并从监听器和删除更新通知用户有关正在更新的位置。


这是逻辑是正确的编码方式,当侦听器不再位于堆栈顶部时,侦听器是否侦听位置更新,因此我正在使用仿真器,我无法测试gps功能,我需要您对此提供建议

谢谢

回答

0

只有当getLastKnownLocation()返回null时,您才应该注册LocationListener,因为这意味着特定位置提供程序被禁用。同时缓存像位置这样的实时值听起来不像是一个好的设计。我建议为每个Activity的onStart/onStop方法注册/取消注册LocationListener。