【问题标题】:Use location services not as fast as google-map使用位置服务不如谷歌地图快
【发布时间】:2017-10-13 01:53:45
【问题描述】:

想和大家讨论一下,分享一下为什么使用定位服务不如google-map快。

现在,我创建了两个线程定位服务:

  • GoogleApiClient(使用 LocationServices.API)
  • 通过 GPS 和网络提供商定制自己的定位服务

使用 GoogleAPIClient (LocationServices) 我进行配置

  • PRIORITY_HIGH_ACCURACY
  • FAST_INTERVAL_FUSED_POSITION(10 秒)
  • INTERVAL_FUSED_POSITION(60 秒)

使用自己的线程从 gps、网络接收位置,用 3 分钟我请求从 gps、网络提供商获取位置。

但有时我的应用程序接收速度不如 GoogleMap 应用程序。例如:

  • 当我的应用长时间无法接收位置时,打开谷歌地图需要 立即定位并重新打开我的应用就可以了。
  • 我总是注意到 google-map 会在几秒钟内获得位置,而我的应用程序 没有那么快。

使用定位服务的大家一起讨论,分享一些提高定位速度的东西。

【问题讨论】:

    标签: android google-maps google-api gps location-services


    【解决方案1】:

    尝试使用 Play Services 融合位置提供程序及其 getLastLocation() 方法。文档可通过https://developer.android.com/training/location/retrieve-current.html 获取。

    如果在您的应用打开之前在您的设备上启用了定位并且您使用此方法,您应该会很快获得位置。

    【讨论】:

    • FusedLocaitonAPI 是 GoogleAPI-LocationService 的一部分吗?我正在使用它:LocationServices.FusedLocationApi.requestLocationUpdates(mLLocationClient, request, this);
    • Play Services 位置 API 优于您刚才描述的 Google API LocationServices。从我刚刚提到的文档页面中:“Google Play 服务位置 API 优于 Android 框架位置 API (android.location),作为向您的应用添加位置感知的一种方式。如果您当前正在使用 Android 框架位置 API ,强烈建议您尽快切换到 Google Play 服务位置 API。”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    • 2016-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-02
    相关资源
    最近更新 更多