Sí, lo hay, pero hacerlo correctamente requiere un jailbreak (legal, anula la garantía) y una posible ruptura de los TOS de Google Maps.
El caché se puede usar hasta cierto punto: la aplicación Google Maps usa su caché fuera de línea, por lo que los mosaicos están visibles y el mapa se puede desplazar un poco (si se panoramizó mientras estaba en línea y podría obtener mosaicos adyacentes). Las indicaciones se conservan en la vista de lista incluso si no puede seguirlas todas en la vista de mapa.
Si desea más que esto, no está integrado de forma predeterminada. Si haces jailbreak, podrías hackearlo para tener un caché mucho más grande que admita cientos de MB de contenido, incluidos niveles de zoom, etc.
La configuración sería un truco importante y en contra de los TOS de Google Maps. Cuando esté en línea, deberá rastrear sus propios paquetes en el iPhone, detectar aquellos que involucren a Google Maps y crear un caché. Cuando esté desconectado, querrá redirigir todas las solicitudes a los servidores de Google Maps a un servidor HTTP local que se ejecuta en el iPhone y luego servir los mosaicos.
He visto esto hecho con una computadora que con frecuencia estaba fuera de línea, pero no con un iPhone, pero debería funcionar bien. También puede agregar capas de mosaico personalizadas de esta manera si lo desea.