4 ms·
Maps on Android
- lnanek2 11y agoThe Google Maps API for Android is one of the rare SDKs that continually gets worse over time. In the Android beta it actually had more features like driving directions, but the classes were moved off into undocumented classes, then made unreachable completely driving people to use JS APIs or competitors like Skobbler. It's pretty clear Google isn't eating their own dog food with this and that it's just a back water that has nothing to do with their own Maps app. Kind of a shame because they could be making every mapping app on their entire platform better with a good SDK, making their entire platform much better, instead of only helping their one app.
- mmg 11y agoIn all fairness, they do have a freemium Directions API that gives driving directions. The free version however seems to be very restricting. In terms of the Google Maps API they between v1 and v2 they added some convenience methods and some UI jazz but in terms of the functionality it is just as restricting. The Directions API can be found here: https://developers.google.com/maps/documentation/directions/ https://developers.google.com/maps/documentation/directions/
- bhandziuk 11y agomaps.google.com is also getting progressively slower. I continually wait on Google Maps to load while in another tab on Bing I am already finding directions.
- agumonkey 11y agoWhen they announced the end of the legacy maps, I went to try other sites, OSM, bing. I was surprised how lean and responsive they were. The new 'social' google maps doesn't bring me anything, I'm not the target audience searching to connect restaurants with google+ notes. The 'whole screen' map idea was nice, but everything else was a 'system version 2' in disguise. Maybe they'll make a maps v5 (remember winamp 3 overengineered and sluggish) that will be on point.
- cryptoz 11y agoYes, this is my experience exactly with PressureNet[1]. The SDK is terrible. And they know this too, because I just found the android-maps-utils library on GitHub [2], written by someone on the Google Maps Android team. It's a library of additional, critical features that the Maps SDK should have built in, and it's made by Google! So why aren't these features in the SDK? Example critical feature: Place text on a map. Supported method of doing so is to create Bitmaps on the fly using the drawText() method to compose your dynamic image. Ridiculous. So this new library supports simple features like that, but why isn't it baked into the SDK? Argh. [1]: https://play.google.com/store/apps/details?id=ca.cumulonimbus.barometernetwork https://play.google.com/store/apps/details?id=ca.cumulonimbu... [2]: https://github.com/googlemaps/android-maps-utils https://github.com/googlemaps/android-maps-utils
- chrisbroadfoot 11y agoAuthor of said library here. I still work for Google, but I'm not on the Maps team anymore :) Agree that some of the functionality in the util library should be in the base library, or the util library linked to from the Maps documentation. For example, all of the spherical math stuff. However, I'm not happy with how some of the API turned out. The clustering library is quite complex. I think it's fairly well designed, but overly flexible. I'd re-do quite a few things, given another chance. It's always hard to get those kinds of APIs right the first time. You don't get to re-do things like that once they're in the official SDK. That API needs to be supported approximately forever.
- mmg 11y agoIs there a reason why so much functionality is not exposed?
- chrisbroadfoot 11y agoNot sure what you mean specifically, but here's some of my thoughts (note that these do not represent those of the product team)... * Technical reasons. All calls to Android Maps API happen via an IPC (inter-process, not intra-process, actually), so they are generally slow. That could be bad for things that should be fast to compute like everything in SphericalUtil and PolyUtil. * It's hard to design a nice API for Clustering. Having it open-source means Google doesn't have to guarantee support for that API according to the ToS (iirc, >1 year) * Open source library code demonstrates use of the API. You could think of it as additional sample code. * There's some value in having open source code, generally. A lot of the stuff could be useful in other settings - for example, you could port a lot of the math code to other languages.
- gjm11 11y ago> The Google Maps API for Android [...] continually gets worse over time. That's not a bug, it's a feature: Google Maps on the web and the Android maps app are also continually getting worse over time, so it would be terribly inconsistent if the Maps API didn't follow suit.
- clumsysmurf 11y agoI get the impression as an Android developer that Googlers overcome things by brute-forcing with their raw intellect, but don't value actually reducing complexity by making reusable, easy, complete, well documented, and hard to misuse APIs.
- mmg 11y agoThe pros and cons of an open community
- deleted 11y ago[deleted]