Это вопрос очень глубокий, тупо хранить в бд тайлы карт всегда это плохой вариант.
Я делал такое только один раз в своей жизни и то на более простом уровне, работы там много, но суть такая, что при первом показе сохраняешь тайлы, если юзер давно на них не заходил, то помечаешь их для удаления.
В самой карте при загрузке приложения если известен центр карты, то подгружаешь из бд тайлы в оперативу, которые нужны будут и показывать их, вместо подгрузки из инета.
Но тут проблема, что стоковыми сдк это не сделать никак и надо кастом юзать