IMHO you should go Native, then:
Use Google Maps SDK for Android version 2 (https://developers.google.com/maps/documentation/android/) and its iOS analog (https://developers.google.com/maps/documentation/ios/), that way you will have the same Maps with the same objects and a similar if not equal API (same properties, methods, etc.).
As an example, note the BIG similarities in the Polyline object:
iOS: https://developers.google.com/maps/documentation/ios/reference/interface_g_m_s_polyline
Pick a way to persist the geo data on the device (JSON strings, NSArray and NSDictionary types can be stored in Files with writeToFile or CoreData on iOS or in Files or SQLite on Android. You can even persist serialized Objects and/or collections of Objects.
To persist the App data on the Server, you can use Google DataStore and Maps Engine (http://www.google.com/enterprise/mapsearth/products/mapsengine.html) or Kii Cloud (http://www.kii.com/en/technology/kiicloud/data).
I'm building a travel app and I will use this lineup of SDKs and Services along with other Google Cloud Platform products.
Good luck!