5 Replies
      Latest reply on Oct 2, 2019 12:49 PM by severalbits
      Zax Level 1 Level 1 (0 points)

        The max resolution of iOS's MKMapView could only reach the Google zoom level 19, which seems to be insufficient especially for users who want to manually draw points of a path or shape with finger gesture directly on map. For example while drawing the edge of a house, those points would be too close for fingers to tap and drag.

         

        We're using our own map layers which support zoom levels larger than 19, and the absence of system map layer for higer zoom levels is acceptable.

         

        Is there any (hacked) way to increase the max resolution/zoom level of the MKMapView to level 20 or higher? or how to suggest Apple's map team to cancel this limitation in next iOS?

        • Re: Max MKMapView Resolution/Zoom Level
          kkaverappa Level 1 Level 1 (0 points)

          Zax, did you find any solution for this zooming issue? I am also looking for a solution.

            • Re: Max MKMapView Resolution/Zoom Level
              john daniel Level 4 Level 4 (500 points)

              Hello kkaverappa,

              The starting point for a suggestion to Apple's map team to cancel this limitation would be to file a Radar. There is no way to tell when or if they will implement it. MapKit is designed for Apple's needs primarily. If you need something it doesn't provide, there are other mapping solutions available. Apple's solution is the only free one however.

            • Re: Max MKMapView Resolution/Zoom Level
              DnV1eX Level 1 Level 1 (0 points)

              One "hacked" way is to use private API:

               

              mapView.setValue(21, forKeyPath: "_mapView._mapCameraController._mapModel._forcedMaxZoomLevel")

               

              Tested on iOS 12.

                • Re: Max MKMapView Resolution/Zoom Level
                  edford Apple Staff Apple Staff (785 points)

                  Please don't do this. Calling into Apple's private APIs is unsupported and will break as the system changes over time.

                   

                  If you'd like a map that can zoom further, please experiment with MKMapTypeSatelliteFlyover and MKMapTypeHybridFlyoverFlyover map types to see if those meet your needs, as they offer higher resolution imagery than the standard satellite and hybrid map types. If the Flyover maps don't meet your needs, please file Feedback items and explain your use case for zooming further beyond current limitations.

                    • Re: Max MKMapView Resolution/Zoom Level
                      severalbits Level 1 Level 1 (0 points)

                      I've done some additional digging and discovered that you can draw tiles up to level 25 by creating a tile overlay with `canReplaceMapContent = true`. Of course in that case you will not get the base imagery from MapKit.

                       

                      Using the flyover map types did not change anything for me; I get a maximum zoom level of 25 for .hybrid, .hybridFlyover, etc.

                       

                      I work with drone imagery and it is pretty easy to create tiles at zoom levels higher than 25 (sub centimeter/px). Why not just allow MapKit to display content at arbitrary resolutions?