AnyMaps icon indicating copy to clipboard operation
AnyMaps copied to clipboard

Various changes on my fork, which you might like to include?

Open johan12345 opened this issue 5 years ago • 0 comments

Hi! Thank you very much for the AnyMaps library. I am working on implementing it into my EVMap project (https://github.com/johan12345/EVMap). In the process have done some improvements to AnyMaps in my fork, as seen in the list below.

Is this project still maintained? Would you be open to PRs for some or all of these changes?

If yes, how should we handle this - one small PR for each of the changes? In that case it may be necessary to have the PRs built on top of each other as not all changes are completely separable from each other. Or I can make one large PR with the features you would like to have.

Major changes

  • Add a MapFragment class (https://github.com/johan12345/AnyMaps/commit/830989e2cc855d206a20e72df8c10383d1d93937, https://github.com/johan12345/AnyMaps/commit/e172821ae2f0e7dd07c51940f4fca2a25ee31240), which handles lifecycle callbacks automatically and allows the user to directly set which map implementation should be used. This alleviates the need to import a specific MapView and MapsConfiguration implementation and can automatically select the best backend based on the anymap-... libraries that are available (e.g. if you have one Build flavor for Google Maps and one for OSM, you don't need any flavor-specific code to handle the creation of the map).
  • Add an implementation for Mapbox maps in the anymaps-mapbox module (https://github.com/johan12345/AnyMaps/commit/61c95e63bf8059803ccafb59901955534a92ee5e, https://github.com/johan12345/AnyMaps/commit/ebc45825f90082e62df31202186425e7f9c0d3d2)
  • Update dependencies (https://github.com/johan12345/AnyMaps/commit/1a3b385d8d436489bed2e05450b6b3f82542f85c, https://github.com/johan12345/AnyMaps/commit/3d229c8edbeb7cc82ad201cf34c549ac425b5d9b, https://github.com/johan12345/AnyMaps/commit/5d143241b9a85f4ee354f97cfb6909f2e7271faa) and make necessary code adjustments (Android build tools, Support Library, Google Maps, OSMDroid)

Minor changes (relevant for all AnyMaps backends)

  • Add support for a dark map style https://github.com/johan12345/AnyMaps/commit/8892f63fae00794a4794cb1710ffb208567c2c5e (supported in Google Maps, OSM and Mapbox)
  • Replace OnCameraChangeListener with OnCameraIdleListener (https://github.com/johan12345/AnyMaps/commit/1e04d7a63f7ccafeb9757f72d4305efbccd41616, https://github.com/johan12345/AnyMaps/commit/7dc99ecc1e10e4c641f7f7bc9645a0db8aea65a0) for consistency with current Google Maps APIs
  • Implement LatLngBounds.contains (https://github.com/johan12345/AnyMaps/commit/9f3041e6680e763f5dc8441773d80813e66c2d5f)
  • Implement Marker.setAnchor for all backends (https://github.com/johan12345/AnyMaps/commit/75f7048e12507d93e46b0e1861e32dfa78ad86cf)

Minor changes (OSM)

  • add attribution (https://github.com/johan12345/AnyMaps/commit/2a2c03288c64e6cbab00bee16853020c0e70992e)
  • Disable OSMDroid's zoom controller buttons (https://github.com/johan12345/AnyMaps/commit/8613bc3594c113363ba5a4602a6f9a4d6eeba1d0) for consistency with Google Maps, which does not have such buttons by default

Minor changes (Google Maps)

  • Add support for some additional features (no-op in other backends):
    • Hybrid and Terrain map types (https://github.com/johan12345/AnyMaps/commit/db3cfa6df71266fa4fdd625c621059073abbdae4)
    • Some UISettings functions (https://github.com/johan12345/AnyMaps/commit/7f6f30eda2be83eb3f46f32555778791110c72c3)
  • Add support for non-bitmap drawables as marker icons (https://github.com/johan12345/AnyMaps/commit/fa10f244e7dfb4e75c5e6339c95d7f3b31267e60)
  • On the mapsv3 branch, I upgraded the Google Maps SDK vom V2 to the current V3.1 Beta version.

johan12345 avatar Aug 08 '20 17:08 johan12345