feat!: Mapbox update 2.20 -> 3.2 (WIP)

This commit is contained in:
Piotr Dec 2024-07-15 00:18:55 +02:00
parent cd85180f99
commit 9a2b0dd187
Signed by: stawros
GPG key ID: F89F27AD8F881A91
6 changed files with 53 additions and 51 deletions

View file

@ -5,7 +5,7 @@ import android.bluetooth.BluetoothAdapter
import android.bluetooth.BluetoothDevice
import android.bluetooth.BluetoothSocket
import android.util.Log
import com.mapbox.navigation.ui.maneuver.model.Maneuver
import com.mapbox.navigation.tripdata.maneuver.model.Maneuver
import java.io.IOException
import java.util.*
import java.util.concurrent.SynchronousQueue

View file

@ -5,7 +5,6 @@ import android.annotation.SuppressLint
import android.bluetooth.BluetoothAdapter
import android.bluetooth.BluetoothDevice
import android.bluetooth.BluetoothManager
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.os.Build
@ -18,14 +17,10 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.LifecycleOwner
import com.mapbox.navigation.base.formatter.DistanceFormatterOptions
import com.mapbox.navigation.base.options.NavigationOptions
import com.mapbox.navigation.base.trip.model.RouteProgress
import com.mapbox.navigation.core.formatter.MapboxDistanceFormatter
import com.mapbox.navigation.core.lifecycle.MapboxNavigationApp
import com.mapbox.navigation.core.trip.session.RouteProgressObserver
import com.mapbox.navigation.ui.maneuver.api.MapboxManeuverApi
import eu.ztsh.garmin.databinding.ActivityMainBinding
import eu.ztsh.garmin.mapbox.NavigationObserver
@SuppressLint("MissingPermission")
class MainActivity : AppCompatActivity() {
@ -33,18 +28,18 @@ class MainActivity : AppCompatActivity() {
lateinit var garmin: Garmin
private lateinit var binding: ActivityMainBinding
private val mapboxObserver = MapboxObserver()
private val navigationObserver = NavigationObserver()
init {
lifecycle.addObserver(object : DefaultLifecycleObserver {
override fun onResume(owner: LifecycleOwner) {
MapboxNavigationApp.attach(owner)
MapboxNavigationApp.registerObserver(mapboxObserver)
MapboxNavigationApp.registerObserver(navigationObserver)
}
override fun onPause(owner: LifecycleOwner) {
MapboxNavigationApp.detach(owner)
MapboxNavigationApp.unregisterObserver(mapboxObserver)
MapboxNavigationApp.unregisterObserver(navigationObserver)
}
})
}
@ -56,7 +51,7 @@ class MainActivity : AppCompatActivity() {
if (!MapboxNavigationApp.isSetup()) {
MapboxNavigationApp.setup {
NavigationOptions.Builder(applicationContext)
.accessToken(BuildConfig.MAPBOX_DOWNLOADS_TOKEN)
// .accessToken(BuildConfig.MAPBOX_DOWNLOADS_TOKEN)
.build()
}
}
@ -66,37 +61,37 @@ class MainActivity : AppCompatActivity() {
override fun onStart() {
super.onStart()
MapboxNavigationApp.current()?.registerRouteProgressObserver(routeProgressObserver)
// MapboxNavigationApp.current()?.registerRouteProgressObserver(routeProgressObserver)
}
override fun onStop() {
super.onStop()
MapboxNavigationApp.current()?.unregisterRouteProgressObserver(routeProgressObserver)
// MapboxNavigationApp.current()?.unregisterRouteProgressObserver(routeProgressObserver)
}
override fun onDestroy() {
super.onDestroy()
MapboxNavigationApp.current()?.stopTripSession()
maneuverApi.cancel()
// maneuverApi.cancel()
}
// Define distance formatter options
private val distanceFormatter: DistanceFormatterOptions by lazy {
DistanceFormatterOptions.Builder(this).build()
}
// Create an instance of the Maneuver API
private val maneuverApi: MapboxManeuverApi by lazy {
MapboxManeuverApi(MapboxDistanceFormatter(distanceFormatter))
}
private val routeProgressObserver =
RouteProgressObserver { routeProgress ->
maneuverApi.getManeuvers(routeProgress).value?.apply {
garmin.process(
this[0]
)
}
}
// // Define distance formatter options
// private val distanceFormatter: DistanceFormatterOptions by lazy {
// DistanceFormatterOptions.Builder(this).build()
// }
// // Create an instance of the Maneuver API
// private val maneuverApi: MapboxManeuverApi by lazy {
// MapboxManeuverApi(MapboxDistanceFormatter(distanceFormatter))
// }
//
// private val routeProgressObserver =
// RouteProgressObserver { routeProgress ->
// maneuverApi.getManeuvers(routeProgress).value?.apply {
// garmin.process(
// this[0]
// )
// }
// }
private fun bluetoothInit() {
val bluetoothManager: BluetoothManager = getSystemService(BluetoothManager::class.java)

View file

@ -1,6 +1,6 @@
package eu.ztsh.garmin
import com.mapbox.navigation.ui.maneuver.model.Maneuver
import com.mapbox.navigation.tripdata.maneuver.model.Maneuver
class ManeuverMapper {

View file

@ -1,10 +1,10 @@
package eu.ztsh.garmin
package eu.ztsh.garmin.mapbox
import android.util.Log
import com.mapbox.navigation.core.MapboxNavigation
import com.mapbox.navigation.core.lifecycle.MapboxNavigationObserver
class MapboxObserver : MapboxNavigationObserver {
class NavigationObserver : MapboxNavigationObserver {
override fun onAttached(mapboxNavigation: MapboxNavigation) {
Log.d(TAG, "Attached")