本页面列出了当前处于弃用期的所有 Google Maps Platform 产品和功能,包括地图、路线和地点下的产品。
弃用的运作方式
产品、功能或版本的弃用期从公布弃用的当天开始算起。产品、功能或版本在弃用期内仍可继续使用,弃用期通常为 12 个月。弃用期结束后,产品、功能或版本将被停用,不再提供。
如果 Project Owner 拥有受监管的电子邮件地址,则会在出现对自己的每个项目产生影响的更改时收到系统的主动通知。请及时了解重大更新、弃用和其他更改。
SDK 版本的弃用
在 SDK 和 Maps JavaScript API 中,功能的弃用与版本可用性相关。新的主要版本会声明功能弃用等破坏性更改,而版本说明则会指明支持每个已弃用功能的最高版本。只要支持已弃用功能的最高 SDK 版本可用,您就可以继续使用已弃用的功能。如要升级到 SDK 的下一个主要版本,您必须从代码中移除已弃用的功能或迁移到其替换版本。
详细了解遵循季度发布和停用时间表的 Maps JavaScript API 版本可用性。
请参阅相关指南,了解如何管理 Maps SDK for Android、Maps SDK for iOS、Places SDK for Android 和 Places SDK for iOS 的版本依赖项。
处于弃用期
本部分列出了当前处于弃用期的所有产品和功能。
Maps JavaScript API 的 Local Context Library(自 v3.51.2 起弃用)
由于此 Beta 版功能的采用率不高,Local Context Library 自 v3.51.2 起会被弃用。Local Context Library 将继续运作,直至另行通知,但我们建议不要将其添加到新项目中。
如果您有兴趣自行打造类似于 Local Context Library 的体验,我们建议您在快速构建器中查看“Neighborhood Discovery”解决方案或使用 Maps JavaScript API 的地点库。地点库的代码示例和 Codelab 可以为您提供帮助。
适用于 Places SDK for Android 的地点兼容性库(自 2022 年 3 月 31 日起弃用)
自 2022 年 3 月 31 日起,适用于 Places SDK for Android 的所有版本的地点兼容性库都将被弃用。我们即将暂停开发适用于 Places SDK for Android v2.6.0 的地点兼容性库(在依赖项中指定为 com.google.android.libraries.places:places-compat:2.6.0
)。
在此日期之后,我们将不再发布此库的新版本。届时,只能使用 Places SDK for Android 访问 Places SDK for Android 2.6.0 以上版本的功能和 bug 修复。
地点兼容性库于 2019 年 1 月推出,旨在协助从旧版 SDK(在 Play 服务中提供)到独立 Places SDK for Android 的迁移过程。
按照迁移指南直接使用 Places SDK for Android。地点兼容性库与 Places SDK for Android 之间的部分状态代码、方法名称和自动补全类名称有所不同。如需了解如何指定和维护 Places SDK for Android 版本的依赖项,请参阅版本文档。
我们目前不打算停用地点兼容性库。但是,如果您选择继续使用现有的地点兼容性库版本,请注意有关旧版 SDK 的支持限制。
Places API 和 Maps JavaScript API 地点库中不受支持的“地点搜索”查询(2022 年 3 月 31 日 - 2023 年 3 月 31 日)
Places API 和 Maps JavaScript API 地点库中不适用于“文本搜索”“附近搜索”和“查找地点”的“地点搜索”查询自 2022 年 3 月 31 日起弃用,并将于 2023 年 3 月 31 日起收到 INVALID_REQUEST
错误响应。
Places API 和 Maps JavaScript API 地点库支持三种查找地点的方法:文本搜索、附近搜索和查找地点。每种方法都接受参数组合受支持的请求,并拒绝参数组合不受支持的大多数请求。
到目前为止,系统并未正确拒绝一些不受支持的参数组合:
query
参数为空或缺失,且没有受支持的type
参数的“文本搜索”请求。- 包含
query=*
的“文本搜索”请求。 - 包含
keyword=*
的“附近搜索”请求。 - 包含
name=*
的“附近搜索”请求。 - 包含
input=*
的“查找地点”请求。
必须将这些不受支持的“地点搜索”请求替换为以下请求之一:
没有
keyword
(或name
)参数的附近搜索请求,该请求可用于查找附近的建筑物。此外,还建议使用具有一种受支持类型(请参阅表 1:地点类型)的type
参数。对于query
参数为空或缺失的“文本搜索”请求,这种做法可提供与此类请求的当前行为最相符的内容。包含
latlng
参数的 Geocoding API 请求,该请求可用于查找最近的地址。这可提供与以下请求的当前行为最相符的内容:- 包含
query=*
的“文本搜索”请求。 - 包含
keyword=*
的“附近搜索”请求。 - 包含
name=*
的“附近搜索”请求。 - 包含
input=*
的“查找地点”请求。
- 包含
内容安全政策更新(2022 年 3 月 21 日 - 2023 年 5 月)
对于使用内容安全政策 (CSP) 但未在 Maps JavaScript API 中指定 googleapis.com 的网站,相关支持自 v3.49 起停止,自 v3.50 开始不再提供。最后一个支持版本 v3.49 将于 2023 年第 2 季度停用,届时 Maps JavaScript API 将拒绝使用 CSP 指令且未指定 googleapis.com 的所有请求。
为避免网站体验受到影响,请在 CSP 中指定 googleapis.com。目前可用的所有 Maps JavaScript API 版本均支持 CSP。
Google Maps Platform 游戏服务(2021 年 10 月 18 日 - 2022 年 12 月 31 日)
Google Maps Platform 游戏服务自 2021 年 10 月 18 日起弃用,自 2022 年 12 月 31 日起停用。在弃用期内,Google 将继续针对重大错误和服务中断提供支持和修复。请参阅游戏服务转换指南,获取相关资源,以帮助您规划项目的后续步骤。
已作废的地点 ID(2021 年 3 月 16 日 - 2022 年 3 月 30 日)
自 2022 年 3 月 30 日起,所有 Google Maps Platform API 将停止接受已作废的地点 ID。自 2022 年 3 月 30 日起,使用作废的地点 ID 的所有请求都将被拒绝,并返回错误代码 INVALID_REQUEST
。为防止用户体验变差,请刷新所有早于 2021 年 3 月 30 日的地点 ID。
google.load 中的 Maps 模块(2020 年 10 月 13 日 - 2021 年 10 月 13 日)
为 google.load
提供“Maps”模块的服务自 2020 年 10 月 13 日起弃用,自 2021 年 10 月 13 日起停用。停用之后,如果请求加载 google.load
中的“Maps”模块,将导致错误,并且不会加载任何地图。如需了解详情,请参阅迁移指南。
Places SDK for iOS GMSPlaceField
现在采用 NS_OPTIONS
宏(从 v4.0.0 开始)
从 Places SDK for iOS v4.0.0 开始,GMSPlaceField
现在采用 NS_OPTIONS
宏,而非 NS_ENUM
,以获得更好的 Swift 支持。如需了解详情,请参阅改用采用 NS_OPTIONS 的 GMSPlaceField。
如需继续将 GMSPlaceField
当作 NS_ENUM
来使用,请在依赖项中指定 v3.10.0 或更早版本。
Places SDK for iOS 的方法:setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner, initWithBounds:filter (v3.10.0 - v4.0.0)
setAutocompleteBoundsUsingNorthEastCorner:SouthWestCorner
辅助方法自 v3.10.0 起弃用,在 v4.0.0 及更高版本中不受支持。请改用 locationBias
或 locationRestriction
。
initWithBounds:filter
方法自 v3.10.0 起弃用,在 v4.0.0 及更高版本中不受支持。请在 GMSAutocompleteFetcher
中改用 initWithFilter:
。
支持这些已弃用的方法的最高版本是 v3.10.0。
如需详细了解替换方法,请参阅附录 1。
地点自动补全中的 GMSCoordinateBounds
(v3.9.0 - v4.0.0)
在 Places SDK for iOS 自动补全服务中利用 GMSCoordinateBounds
的一些属性/参数自 v3.9.0 起弃用,并且在 v4.0.0 及更高版本中不受支持。支持已弃用的属性/参数的最高版本是 v3.10.0。
GMSAutocompleteViewController
中的边界
以下 GMSAutocompleteViewController
属性将弃用:
GMSAutocompleteViewController.autocompleteBounds
GMSAutocompleteViewController.autocompleteBoundsMode
如需实现同等功能,请将 GMSAutocompleteViewController.autocompleteFilter
与 GMSAutocompleteFilter.locationBias
或 GMSAutocompleteFilter.locationRestriction
结合使用。具有这些替换属性的最低 Places SDK for iOS 版本是 v3.8.0。
findAutocompletePredictionsFromQuery
和 autocompleteQuery
中的边界
- 用于以下各项的
bounds
和boundsMode
参数:
如需实现同等功能,请将 findAutocompletePredictionsFromQuery:filter:sessionToken:callback
与 GMSAutocompleteFilter.locationBias
或 GMSAutocompleteFilter.locationRestriction
结合使用。具有这些替换属性的最低 Places SDK for iOS 版本是 v3.8.0。
如需详细了解替换方法,请参阅附录 1。
“地点”字段 GMSPlace.openNowStatus
(v3.0.0 - v4.0.0)
Places SDK for iOS 中的“地点”字段/属性 GMSPlace.openNowStatus
自 v3.0.0 起弃用,并且在 v4.0.0 及更高版本中不受支持。支持已弃用的字段的最高版本是 v3.10.0。
请改用 GMSPlace.isOpen
或 GMSPlace.isOpenAtDate
函数。具有这些替换函数的 Places SDK for iOS 最低版本是 v3.3.0。
“地点”字段:permanently_closed
(已于 2020 年 5 月 26 日弃用)
Places API 和 Maps JavaScript API 地点库中的“地点”字段 permanently_closed
已弃用,不应继续使用。请改用 business_status
(Places API) 或 business_status
(JavaScript API 地点库)来获取商家的营业状态。具有 business_status
的 Maps JavaScript API 地点库最低版本是 v3.40。
“地点”字段 open_now
、utc_offset
(已于 2019 年 11 月 20 日弃用)
Maps JavaScript API 地点库中的“地点”字段 open_now
和 utc_offset
自 2019 年 11 月 20 日起已弃用,不应继续使用。
这两个字段仅在 Maps JavaScript API 地点库中弃用。
- 在“地点详情”中,
open_now
字段已替换为PlaceResult.opening_hours.isOpen()
。对于“附近搜索”和“文本搜索”,请使用openNow:true
请求参数过滤出当前正在营业的地点。没有为“查找地点”提供对应项。如需获得此值,您现在必须发送“地点详情”请求。 - 在“地点详情”中,
utc_offset
字段已替换为PlaceResult.utc_offset_minutes
。
如需了解详情,请参阅“地点”字段迁移。
Maps JavaScript API:google.maps.event.addDomListener()
和 google.maps.event.addDomListenerOnce()
(已于 2022 年 4 月 7 日弃用)
Maps JavaScript API 中的函数 [google.maps.event.addDomListener()](/maps/documentation/javascript/reference/event#event.addDomListener)
和 [google.maps.event.addDomListenerOnce()](/maps/documentation/javascript/reference/event#event.addDomListenerOnce)
已弃用,不应继续使用。请改用标准的 addEventListener() 方法。
这些方法仍继续有效,并且我们不打算停用它们。
弃用期结束
本部分列出了所有已停用的产品和功能。这些产品和功能均不再提供。
Maps JavaScript API v2(2010 年 5 月 19 日 - 2021 年 5 月 26 日)
Maps JavaScript API 第 2 版自 2021 年 5 月 26 日起不再提供。因此,您网站的 v2 版地图将停止运行,并返回 JavaScript 错误。若要继续在您的网站上使用地图,请迁移至 Maps JavaScript API v3。如需了解详情,请参阅将您的 Maps JavaScript API 应用从 v2 升级到 v3。
“地点”字段:reference
、id
、alt_id
、scope
(2019 年 9 月 3 日 - 2020 年 8 月 10 日)
“地点”字段 id
、alt_id
和 scope
自 2020 年 8 月 10 日起不再提供。“地点”字段 reference
已弃用,不应继续使用。
id
响应字段已替换为place_id
响应字段。reference
响应字段已替换为place_id
响应字段,不应继续使用。alt_id
和scope
字段没有对应项,因为它们仅用于在 2018 年 7 月即已停用的“地点添加”服务。
如需了解详情,请参阅“地点”字段迁移。
Maps SDK for iOS 5.0 中的 iOS 版本 10、ARMv7 32 位架构
自 Maps SDK for iOS 5.0 版开始,不再支持 iOS 10 和 ARMv7 32 位架构。
Places SDK for iOS
Places SDK for iOS 5.0 发布后,GMSCoordinateBounds
已弃用,且替换为 GMSPlacesViewportInfo
。
Fusion Tables 图层(实验功能)(2018 年 12 月 3 日 - 2019 年 12 月 3 日)
Maps JavaScript API 中的 Fusion Tables 图层自 2019 年 12 月 3 日起停用,自第 3.38 版起不再提供(3.37 版是支持 Fusion Tables 的最后一个版本)。了解详情。
Places SDK for Android 和 Places SDK for iOS(2019 年 1 月 29 日 - 2019 年 7 月 29 日)
从 2019 年 1 月 29 日起,升级后的 Places SDK for Android 和 Places SDK for iOS 会替换现有版本的 Places SDK。当前版本的 Places SDK for iOS、Places SDK for Android 和地点选取器自 2019 年 1 月 29 日起弃用,自 2019 年 7 月 29 日起停用。
- 更新至最新版本的 Places SDK for iOS。
- 更新至最新版本的 Places SDK for Android。
- 地点选取器自 2019 年 7 月 29 日起不再提供。
“地点添加”和“地点删除”(2017 年 6 月 30 日 - 2018 年 6 月 30 日)
从 2018 年 6 月 30 日起,“地点添加”和“地点删除”功能停用,且不再提供。
附录 1:Places SDK for iOS 已弃用 API 的替换方案汇总
下表显示了可用于替换各个已弃用方法或属性的方案。
具有替换属性的 Places SDK for iOS 最低版本是 v3.8.0。