Compare commits

...

9 Commits

Author SHA1 Message Date
Sergey Vlasenko 7eefe8bf5c update minSdk 21 -> 23 2023-09-06 16:31:07 +03:00
Ganin Alexei 6eeb9c8b99
Merge pull request #269 from TouchInstinct/feature/likard
upgrade sdkVersion
2022-12-07 14:14:58 +03:00
Alexei Ganin 6f74a503c4 upgrade sdkVersion 2022-12-07 14:03:43 +03:00
Alexander Korneev d154ee1988 Updating files for SDK30 on Licard 2021-07-13 16:35:06 +03:00
Korna 06e63202c8 Add working repository url 2021-07-05 23:23:46 +03:00
Artyom Tsebrov f692c07d71 LIC-3666: Add "isMapInitialized" method to AbstractMapManager 2021-03-15 20:59:10 +03:00
NoDopezzz 2c264ecd66 Make savedInstanceState nullable 2020-11-24 13:07:15 +03:00
Artyom Tsebrov 77331dd2a2 Update map manager interface 2020-11-23 16:19:33 +03:00
Artyom Tsebrov c73a8c8e8e WIP: add new methods to MapManagers 2020-11-23 16:17:19 +03:00
7 changed files with 29 additions and 12 deletions

View File

@ -1,10 +1,10 @@
apply plugin: 'kotlin-android'
rootProject.ext {
compileSdk = 29
compileSdk = 31
minSdk = 21
targetSdk = 29
minSdk = 23
targetSdk = 31
}
android {

View File

@ -5,11 +5,11 @@ plugins {
}
android {
compileSdkVersion(29)
compileSdkVersion(31)
defaultConfig {
minSdkVersion(21)
targetSdkVersion(29)
minSdkVersion(23)
targetSdkVersion(31)
}
compileOptions {

View File

@ -46,7 +46,7 @@ abstract class AbstractMapManager<TMapView : View, TMap : Any, TLocation : Any>(
this.mapListener = mapListener
}
open fun onCreate(savedInstanceState: Bundle) = Unit
open fun onCreate(savedInstanceState: Bundle?) = Unit
open fun onDestroy() = Unit
@ -67,6 +67,8 @@ abstract class AbstractMapManager<TMapView : View, TMap : Any, TLocation : Any>(
this.mapListener?.onMapInitialized(map)
}
fun isMapInitialized(): Boolean = this::map.isInitialized
interface AbstractMapListener<TMapView, TMap, TLocation> {
fun onMapInitialized(map: TMap)

View File

@ -17,7 +17,7 @@ allprojects {
google()
jcenter()
maven {
url "https://dl.bintray.com/touchin/touchin-tools"
url "https://maven.dev.touchin.ru"
metadataSources {
artifact()
}

View File

@ -8,6 +8,7 @@ import com.google.android.gms.maps.MapView
import com.google.android.gms.maps.model.CameraPosition
import com.google.android.gms.maps.model.LatLng
import com.google.android.gms.maps.model.LatLngBounds
import com.google.android.gms.maps.model.VisibleRegion
import ru.touchin.basemap.AbstractMapManager
@Suppress("detekt.TooManyFunctions")
@ -29,7 +30,7 @@ class GoogleMapManager(mapView: MapView) : AbstractMapManager<MapView, GoogleMap
}
}
override fun onCreate(savedInstanceState: Bundle) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mapView.onCreate(savedInstanceState)
}
@ -77,10 +78,16 @@ class GoogleMapManager(mapView: MapView) : AbstractMapManager<MapView, GoogleMap
override fun getCameraTilt(): Float = map.cameraPosition.tilt
fun getVisibleRegion(): VisibleRegion = map.projection.visibleRegion
override fun moveCamera(target: LatLng, zoom: Float, azimuth: Float, tilt: Float) {
map.moveCamera(CameraUpdateFactory.newCameraPosition(buildCameraPosition(target, zoom, azimuth, tilt)))
}
fun moveCamera(target: LatLng, userRegionZoom: Float) {
map.animateCamera(CameraUpdateFactory.newLatLngZoom(target, userRegionZoom))
}
override fun smoothMoveCamera(target: LatLng, zoom: Float, azimuth: Float, tilt: Float) {
map.animateCamera(CameraUpdateFactory.newCameraPosition(buildCameraPosition(target, zoom, azimuth, tilt)))
}

View File

@ -14,7 +14,7 @@ open class DefaultActivityLifecycleCallbacks : Application.ActivityLifecycleCall
override fun onActivityDestroyed(activity: Activity) = Unit
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle?) = Unit
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) = Unit
override fun onActivityStopped(activity: Activity) = Unit

View File

@ -15,6 +15,8 @@ import com.yandex.mapkit.map.InputListener
import com.yandex.mapkit.map.Map
import com.yandex.mapkit.map.MapLoadStatistics
import com.yandex.mapkit.map.MapLoadedListener
import com.yandex.mapkit.map.MapObjectCollection
import com.yandex.mapkit.map.VisibleRegion
import com.yandex.mapkit.mapview.MapView
import com.yandex.mapkit.user_location.UserLocationObjectListener
import com.yandex.mapkit.user_location.UserLocationView
@ -91,6 +93,8 @@ class YandexMapManager(
mapListener?.onMapTap(point)
}
fun getCameraPosition(): CameraPosition = map.cameraPosition
override fun getCameraTarget(): Point = map.cameraPosition.target
override fun getCameraZoom(): Float = map.cameraPosition.zoom
@ -99,6 +103,10 @@ class YandexMapManager(
override fun getCameraTilt(): Float = map.cameraPosition.tilt
fun moveCamera(target: CameraPosition) {
map.move(target)
}
override fun moveCamera(target: Point, zoom: Float, azimuth: Float, tilt: Float) {
map.move(CameraPosition(target, zoom, azimuth, tilt), Animation(Animation.Type.LINEAR, CAMERA_ANIMATION_DURATION), null)
}
@ -152,9 +160,9 @@ class YandexMapManager(
userLocationAccuracyCirceColor = accuracyCircleColor
}
fun getVisibleRegion() = map.visibleRegion
fun getVisibleRegion(): VisibleRegion = map.visibleRegion
fun getMapObjects() = map.mapObjects
fun getMapObjects(): MapObjectCollection = map.mapObjects
interface MapListener : AbstractMapListener<MapView, Map, Point>