I have not found a way in ArcGIS OnLine Web Mapping Applications nor Web Maps to limit how far users can zoom in or out. It is possible if there is a cached base map, but not otherwise. Setting scale dependencies and limits on REST services and layers does not negate this need. That will stop the layers from being displayed, but still allow scales that may cause users confusion, frustrations, and problems. Setting a default scale and extent will also fail to address this. This function was possible in an older ESRI platform, ArcGIS for Flex, by specifying LODs.
Does anyone know if this is possible?
Example of my user's problems: Have a global map showing total population by country. The current setup allows a user to zoom in very tight (like to 1:1,147) of automatically zooms to such a scale after searching for a point location. At that scale the user will most likely be deep inside one country's polygon requiring them to have to pan and zoom back out many times to see another country to compare to.
That option appears to only be enabled if there is a cached data layer. I am toying with making a transparent cached layer just to enable that, but that seems like an awful waste of time and server resources to simply control zoom.
Problem is I have my own required base map right now and therefor cannot use the ESRI base maps as well. I am making the assumption that if you have two base maps, you must have the base map chooser enabled and I cannot have that. I cannot allow user to turn on any of the typical ESRI base maps in this application. BTW, I will test my assumption later this week.
Why can I not have the base map chooser with the typical ESRI base maps? The US DOS does not allow any US Gov agency to use the ESRI base maps. The country names, coastlines, and boundaries are not the approved US Gov ones so thay cannot be used on any US Gov product. And yes, I know of many examples violating this rule, but that does not change the rule.
I would recommend caching your basemap. You will receive faster performance and then you will have the ability to limit the zoom levels. You can also host the cached service in ArcGIS Online. Take a look at the following document on how to do this:
Thanks, but it is simply not possible for me to cache this data. The hosting group here at the U.S. Census strongly discourages using caching. It is considered too much of a load on server resources.
If the hosting group in concerned about the load on the ArcGIS Server instance, you won't have to worry about this. The document I provided shows how to create a cache using ArcGIS Desktop tools. ArcGIS Server will not be used at all.
Regardless of how the tiles are generated, the tiles have to be stored on the server. That is discouraged since this group's servers are almost always out of disc space.
I know that must make people roll their eyes, but it typical for US Gov workplaces. Disc space is cheap these days, but the paperwork to get it is not.
How are you sharing this map with your customer? There are some options that you can try with web applications that may address your issue.
The most straight forward way is to limit the map zoom level in the web map is create your own basemap with your desired scale range. You have mentioned that this won't work, so some additional options:
1. As Jake Skinner mentioned, try using the Web AppBuilder using the functionality posted above
2. The Minimalist Configurable App also allows you to disable zooming
3. Consider creating a presentation with specific areas selected: Create presentations—ArcGIS Online Help | ArcGIS
You can also support the following ideas: https://community.esri.com/ideas/7015