You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Maps JavaScript API最高可用缩放级别无法加载问题问询

Google Maps Satellite Zoom Level Discrepancy: MaxZoomService Reports Level 20 But Zooming In Fails

I’ve run into a confusing issue with Google Maps Satellite imagery: just two days ago, level 20 zoom was available for certain regions, but now the map only supports up to level 19. Worse, the MaxZoomService still returns level 20 as the maximum available zoom for these locations—yet clicking the "+" button when at level 19 does nothing, and programmatic zoom attempts also fail.

Unconfirmed Theories Explaining the Issue

  • Level 20 satellite imagery was recently removed for these areas, but the MaxZoomService hasn’t been updated to reflect this change, so it’s still returning outdated data.
  • There’s a temporary outage with level 20 tiles (e.g., the tiles are being reprocessed or refreshed), and service will be restored soon.

    Note: We’ve ruled out confusion between overhead and tilted view zoom limits—both are locked to level 19 across the board.

Updated Observations

  • Previously loaded level 20 tiles still exist at their original URLs; they just aren’t being fetched by the JavaScript API. This suggests a temporary glitch with the imagery layer’s availability service, rather than permanent removal of the tiles.
  • The problem isn’t limited to a single region—it appears to be affecting global satellite imagery.
  • Rolling back to an older version of the Google Maps JavaScript API (like appending ?v=3.29 to the script URL) doesn’t fix the issue.

Reproducible Code Example

Here’s a minimal snippet that demonstrates the discrepancy:

<!DOCTYPE html>
<html>
<head>
<title>Simple Map</title>
<meta name="viewport" content="initial-scale=1.0">
<meta charset="utf-8">
<style>
/* Always set the map height explicitly to define the size of the div
 * element that contains the map. */
#map { height: 100%; }
/* Optional: Makes the sample page fill the window. */
html, body { height: 100%; margin: 0; padding: 0; }
</style>
</head>
<body>
<div id="map"></div>
<script>
var map;
var latlng = {lat: 37.8768101, lng: -122.2813413}
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.SATELLITE,
tilt: 0,
center: latlng,
zoom: 19
});
var mapZoomService = new google.maps.MaxZoomService()
mapZoomService.getMaxZoomAtLatLng(latlng, function(MaxZoomResult){
if(google.maps.MaxZoomStatus.OK){
alert('map.getZoom(): '+map.getZoom()+', MaxZoomResult.zoom: ' + MaxZoomResult.zoom)
}else{
alert('Error: in google.maps.MaxZoomService().getMaxZoomAtLatLng()')
}
})
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=&callback=initMap" async defer></script>
</body>
</html>

When you run this, you’ll see the alert shows MaxZoomResult.zoom as 20, but the map won’t let you zoom past level 19.


内容的提问来源于stack exchange,提问作者pythonjsgeo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:36:21