【问题标题】:android get current location failedandroid获取当前位置失败
【发布时间】:2012-02-22 08:42:56
【问题描述】:

我不想获得我当前的位置,但在大多数手机中它都失败了。 接下来是mycode:

public Location getLocation(Context context)
{
    LocationManager locMan = (LocationManager) context
        .getSystemService(Context.LOCATION_SERVICE);
    Location location = locMan
        .getLastKnownLocation(LocationManager.GPS_PROVIDER);
    if (location == null)
    {
        location = locMan
            .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
    }

    return location;
}    

【问题讨论】:

  • 失败非常很有帮助。
  • 需要更多信息。您是否在清单中添加了所需的权限?
  • 你有什么错误吗.. 如果有,请粘贴堆栈跟踪
  • 我已将所有需要的权限添加到清单中。此功能有时有效,但有时会失败。

标签: android map location


【解决方案1】:

尝试使用这个...可能 locationmanager 没有您的上一个位置

/** * 此函数用于实例化位置管理器并将其绑定到 GPS 提供程序。 * 位置管理器将在每 5 分钟后请求位置更新。 */

private void subscribeToLocationUpdates() {
      this.lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
      this.lm.requestLocationUpdates(LocationManager.GPS_PROVIDER,5000, 0, this);
}

public void onLocationChanged(Location location) {
    if(location != null){

        //make use of this location

    }       
}

【讨论】:

    【解决方案2】:

    首先 - 您是否设置了正确的权限?位置权限是隐式的 - 因此,如果您要求良好的位置,您也会变得粗略。

    您是否按照this 指南获取您的位置?

    通常,您也不会在每次想要获取当前位置时都设置 LocationService。您是否尝试为自己请求位置更新?

    代码太少,问题太模糊,无法真正帮助您,抱歉。

    【讨论】:

    • 我只是不想获取当前位置,也不需要获取更新的位置,有什么简单的函数获取位置吗?
    【解决方案3】:

    在 Manifest 文件中添加权限 ACCESS_FINE_LOCATION

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-15
      • 1970-01-01
      • 1970-01-01
      • 2017-01-22
      • 2018-12-21
      • 2012-01-22
      • 2016-07-30
      相关资源
      最近更新 更多