【问题标题】:Google Maps Android API v2 - APIs related to my location deprecated. Why?Google Maps Android API v2 - 与我的位置相关的 API 已弃用。为什么?
【发布时间】:2013-06-06 20:12:28
【问题描述】:

自 Google I/O 2013 以来,我们可以在多个地方看到 the documentation of Google Maps Android API v2 那个

此方法/接口已弃用。

改用 com.google.android.gms.location.LocationClient。 LocationClient 提供改进的位置查找和电源使用,并由“我的位置”蓝点使用。有关示例代码,请参见示例应用程序文件夹中的 MyLocationDemoActivity,或 Location Developer Guide

虽然新 API 的出现很棒,但我想不出任何好的理由将 @Deprecated 放在这些方法上。

它们确实是访问蓝点所指位置的一种非常方便的方式。

一行

Location location = map.getMyLocation();

要检索我的位置与我们需要使用新的 Location API 编写以达到相同结果的设置代码的数量,反对弃用它们。

来自 MyLocationDemoActivity(ANDROID_SDK/extras/google/google_play_services/samples/maps/src/com/example/mapdemo/MyLocationDemoActivity.java 下):

// These settings are the same as the settings for the map. They will in fact give you updates at
// the maximal rates currently possible.
private static final LocationRequest REQUEST = LocationRequest.create()
        .setInterval(5000)         // 5 seconds
        .setFastestInterval(16)    // 16ms = 60fps
        .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);

评论表明这些硬编码值与地图中的值相同,但将来可能会以不受欢迎的方式发生变化。

因此,在所有的利弊都在这里之后,想要弃用这些 API 的原因可能是什么?

【问题讨论】:

  • 我很抱歉投票结束。我忘记了 StackOverflow 是谷歌地图的官方支持点。但是,我已将标签调整为地图团队宣传他们将监控的集合 (developers.google.com/maps/forum)。
  • 我相信引入它是为了像他们通常所做的那样进行简化,就像他们对 google play 服务等所做的那样。他们提供了一个客户端并将我们抽象出来,即所谓的开发人员从幕后发生的事情中解脱出来。优点是更多的人有机会获得惊人的技巧,缺点是更少的人有机会学习实际的编码。
  • @stack_ved 已弃用的 API 实际上非常更易于使用,这是一件好事 (TM)。

标签: android google-maps google-maps-android-api-2


【解决方案1】:

还有一点。如果 GoogleMap 使用 LocationClient,但我们无权访问它的结果,并且我们必须使用另一个 LocationClient 和一堆侦听器,那么它是同一任务的两个 LocationClient。纯属浪费资源。

【讨论】:

  • 是回答还是评论?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-27
  • 2016-07-15
  • 1970-01-01
相关资源
最近更新 更多