Мне нужно использовать другой источник данных внутри карты в Android, чем данные, предоставленные Google. Есть ли способ изменить источник данных на службу на основе плитки (например, openstreetmap.org)?
Или есть другие API карт Android, которые являются OpenSource и могут быть адаптированы (за исключением Ericcson Mobile Maps - это не работает для меня из-за лицензии)? Он должен иметь часть на стороне сервера - достаточно богатой библиотеки функций.
Используйте OpenStreetMaps, как вы предлагаете. Есть 18 приложений, которые уже интегрируются с OpenStreetMaps.
osmdroid теперь может использоваться как библиотека для обеспечения аналогичной функциональности для Google Maps, но вместо этого использовать данные OpenStreetMap. http://code.google.com/p/osmdroid/
В то время как ОС Android является открытой операционной системой, к сожалению, ядро ОС все еще закрыто - сюда входят такие модули, как Google Maps. В то время как я предполагаю, что это возможно, используя ваш файл HOSTS, чтобы переписать, где Google Maps запрашивает его данные, вам все равно придется перепроектировать, как приложение извлекает данные, а затем вам придется выводить свои собственные данные на место. На самом деле, я думаю, это звучит довольно грязно, а не самый идеальный хак.
Если есть способ сделать это, я не знаю об этом на Android. Если я правильно помню, это было возможно на iPhone, манипулируя кэшированными картами, но извлекая карты из другого источника, насколько это возможно, невозможно.