【问题标题】:Can I listen for GPS changes?我可以收听 GPS 的变化吗?
【发布时间】:2011-04-04 09:00:09
【问题描述】:

我正在编写基于 GPS 收集位置数据的应用程序。我有下一个问题: 当我尝试获取 GPS 数据并且 GPS 已关闭时,我会显示要求打开 GPS 的通知,并且它以“ACTION_LOCATION_SOURCE_SETTINGS”开始(当然点击)意图。问题:我怎么知道用户打开了它?是否有一些广播动作,或者我可以设置一些侦听器或其他什么?

【问题讨论】:

  • 我需要尽快得到它。是的,我知道我可以启动一些可以检查这一点的服务,但是用户更改设置可能需要很长时间,并且会消耗大量电池和系统资源。还是不行?
  • 嘿,我还没有使用 GPS 应用程序。但这是我能为你找到的东西:android.stackexchange.com/questions/186/…
  • @Kartik 我猜它可能在应用程序中使用通过反射打开 GPS。这对我来说不是解决方案(
  • 试试这个Broadcast Receiver:我想它会帮助你
  • @Kartik 是的,但我应该听什么动作?

标签: android


【解决方案1】:
public class MyLocationListener implements LocationListener 
{

@Override
public void onLocationChanged(Location loc) {
    GlobalHelper.handler.post(GlobalHelper.update_location);

}

@Override
public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub
    GlobalHelper.system_message(provider + " Ausgeschaltet", 0,false);
}

@Override
public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub
    GlobalHelper.system_message(provider + " Eingeschaltet",0,false);
}

@Override
public void onStatusChanged(String provider, int status, 
    Bundle extras) {
    // TODO Auto-generated method stub
}

}

【讨论】:

  • 天哪,我忘记了在 LocationListener 中有这样的方法来触发 GPS 状态,我的错误。谢谢!
【解决方案2】:

可以监控android系统设置,见Monitor Android system settings values

【讨论】:

    猜你喜欢
    • 2017-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 2013-01-23
    • 2011-03-06
    相关资源
    最近更新 更多