B4A=true Group=Default Group ModulesStructureVersion=1 Type=Class Version=11.5 @EndOfDesignText@ Sub Class_Globals Private Root As B4XView 'ignore Private xui As XUI 'ignore '//Process Globals Dim GPS As GPS Dim rp As RuntimePermissions Dim ruta As String '//Globals Dim gmap As GoogleMap Private MapFragment1 As MapFragment Dim Latitud As Double = 0 Dim Longitud As Double = 0 Dim Lat2 As Double = 0 Dim Lon2 As Double = 0 Dim p1, p2 As Location Dim Distance As Float Dim boton1 As Button Dim c As Cursor Dim latmarker As String Dim longmarker As String Dim l_long As Label Dim l_lat As Label Dim NOMBRE_TIENDA As String Dim logger As Boolean = True Private b_mapa2 As Button Private b_guardar As Button End Sub 'You can add more parameters here. Public Sub Initialize As Object Return Me End Sub 'This event will be called once, before the page becomes visible. Private Sub B4XPage_Created (Root1 As B4XView) Root = Root1 'load the layout to Root Root.LoadLayout("mapas") If MapFragment1.IsGooglePlayServicesAvailable = False Then ToastMessageShow("Please install Google Play Services.", True) End If 'Boton velocidad' boton1.Initialize(0) boton1.Text = 0 &" "&"km/h" boton1.TextColor = Colors.Red boton1.TextSize = 15 Root.AddView(boton1, 40%x, 5dip, 25%x, 40dip) End Sub 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. Sub B4XPage_Appear GPS.Initialize("GPS") ' Log(1) rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION) Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) ' Log(2) gmap.MyLocationEnabled = Result ' Log(gmap.MyLocationEnabled) If GPS.GPSEnabled = False Then ToastMessageShow("Debe Activar el GPS del Equipo.", True) StartActivity(GPS.LocationSettingsIntent) Else GPS.Start(0, 0) End If latmarker = Latitud longmarker = Longitud ' NOMBRE_TIENDA = B4XPages.MainPage.cliente.NOMBRE If logger Then Log($"lat=${latmarker}, lon=${longmarker}"$) If logger Then Log(gmap) ' Log($"${gmap.IsInitialized} And ${gmap.MyLocationEnabled}"$) If gmap.IsInitialized And gmap.MyLocationEnabled Then gmap.Clear MapFragment1_Ready End If If Not(Starter.Logger) Then logger = False End Sub Sub B4XPage_CloseRequest As ResumableSub Log("Vamos a Cliente") ' BACK key pressed ' Return True To close, False To cancel ' Subs.iniciaActividad("Cliente") ' Return True Return True End Sub Sub MapFragment1_Ready ' LogColor("MapReady", Colors.red) gmap = MapFragment1.GetMap ' rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION) ' Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean) ' gmap.MyLocationEnabled = Result gmap.Clear Dim JavaMapsObject As JavaObject JavaMapsObject = gmap.GetUiSettings JavaMapsObject.RunMethod("setMapToolbarEnabled", Array As Object(True)) 'marcadores If latmarker = "null" Or latmarker = Null Or latmarker = "" Then 'Zocalo latmarker = "19.432568527069805" longmarker = "-99.13335030112772" End If If logger Then Log($"lat=${latmarker}, lon=${longmarker}"$) Dim marcador1 As Marker = gmap.AddMarker(latmarker, longmarker, "TIENDA") marcador1.Snippet = NOMBRE_TIENDA 'Tienda 1 'posicion inicial Dim aa As CameraPosition aa.Initialize(latmarker, longmarker,15)''' RECOMENDABLE CAMBIAR A 10 SI ES MAS DE 1 MARCADOR gmap.AnimateCamera(aa) End Sub Sub GPS_LocationChanged (Parametro As Location) Dim sp As Int sp = Ceil(Parametro.Speed * 3.6) boton1.Text = sp &" "&"km/h" Latitud = Parametro.Latitude Longitud = Parametro.Longitude p2.Initialize2(Latitud,Longitud) p1.Initialize2(Lat2, Lon2) Distance = p1.DistanceTo(p2) End Sub Sub reg_Click ' Subs.iniciaActividad("Cliente") End Sub Private Sub b_guardar_Click B4XPages.ShowPage("Cliente") End Sub