Italian Google Maps da WebView

francesco paolo lavecchia

Member
Licensed User
Ciao a tutti,

sto cercando di sviluppare una app che ha al suo interno una webview con questo liink:

https://www.google.com/maps/dir//43.0215634,13.1807208/@43.0253307,13.1749065,17z/data=!3m1!4b1

Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
End Sub

Sub Globals
Dim myw As WebView
End Sub

Sub Activity_Create(FirstTime As Boolean)

myw.Initialize("myw")

myw.LoadUrl("https://www.google.com/maps/dir//43.0215634,13.1807208/@43.0253307,13.1749065,17z/data=!3m1!4b1")

End Sub

Sub Activity_Resume
End Sub

Sub Activity_Pause (UserClosed As Boolean)
End Sub


Purtroppo non funziona il GPS

L'errore è questo:

Google Maps non è riuscito a determinare la tua esatta posizione.

Da quello che ho capito. l' oggetto webview non ha l'autorizazione ad usare google maps

Qualcuno puo' aiutarmi?

Grazie
 

francesco paolo lavecchia

Member
Licensed User
Ok grazie.

Il problema è che io non posso modificare l'indirizzo perche' è il link di una pagina di un sito.

Il pratica io dovrei usare la mappa che viene creata dal sito web all'interno dell' app per poi prendere le coordinate e fare altre operazioni.
 

sirjo66

Well-Known Member
Licensed User
Longtime User
ok, ma provando con il link che ti ho dato funziona ??
Serve solo per capire dove sta il problema

Sergio
 

francesco paolo lavecchia

Member
Licensed User
Quello che ho scritto sopra non è esatto:

myw.Initialize("myw")
myw.LoadUrl("https://www.google.com/maps/dir//43.0215634,13.1807208/@43.0253307,13.1749065,17z/data=!3m1!4b1")

perche' a quel link non ci arrivo in modo diretto

myw.Initialize("myw")
myw.LoadUrl("www.nomedelmiosito.it")

poi da dentro il sito c'e' la chiamata a google maps e l'app "non vede" il gps (se dall' app esegui il brower esterno il browser vede il gps)

Se provi con il codice che ho scritto sopra DOVRESTI (a meno che non sbaglio qualcosa nel sorgente) avere il mio stesso problema.
 

Star-Dust

Expert
Licensed User
Longtime User
Il pratica io dovrei usare la mappa che viene creata dal sito web all'interno dell' app per poi prendere le coordinate e fare altre operazioni.

Quali coordinate vuoi ottenere? Dell'utente in quel momento o della destinazione? Ma le coordinate della destinazione sono fisse? (almeno dal link sembra che le coordinate siano fissate in un punto specifico)

Nella tua App cosa vuoi ottenere? Vuoi che indichi all'utente la strada per arrivare in un determinato punto fruttando il GPS?
Vuoi "simulare" il browser o Google Map?
Che operazioni devi fare con le coordinate?

Se capiamo bene cosa vuoi ottenere possiamo suggerirti qualcosa.

P.S. Vedi comunque https://www.b4x.com/android/forum/threads/google-maps.63930/#content
 

francesco paolo lavecchia

Member
Licensed User
Quali coordinate vuoi ottenere? Dell'utente in quel momento o della destinazione? Ma le coordinate della destinazione sono fisse? (almeno dal link sembra che le coordinate siano fissate in un punto specifico)

Si, le coordinate sono fisse per ogni oggetto cercato

Nella tua App cosa vuoi ottenere? Vuoi che indichi all'utente la strada per arrivare in un determinato punto fruttando il GPS?

Si, voglio che all' utente venga tracciata la strada dal punto GPS dove sta lui e il punto fisso dell' oggetto selezionatoi

Vuoi "simulare" il browser o Google Map?

il sito internet gia' pensa a creare la strada perche' usa google map

Che operazioni devi fare con le coordinate?

Le devo archiviare in un db del sito per tracciare i movimenti dell' utente
 

Star-Dust

Expert
Licensed User
Longtime User
Quindi il sito che genera gli indirizzo non é quello indicato sopra, cioé:
B4X:
myw.LoadUrl("https://www.google.com/maps/dir//43.0215634,13.1807208/@43.0253307,13.1749065,17z/data=!3m1!4b1")

L'url è il risultato della scelta fatta su questo sito (che mi pare non hai menzionato) ... e se non ho capito male.. genera un reindirizzamento del browser su GoogleMap

Ricapitolando
C'è un sito in cui selezioni degli oggetti/destinazioni, dopo aver cliccato ti reindirizza il browser sul GoogleMap su determinate coordinate legate all'oggetto scelto e col Browser ti conduce all'oggetto.

Sempre se ho capito bene, allora sono sicuro che potresti usare Google Map Library (Che ti ho già linkato sopra)
Le coordinate le puoi carpire facilmente.

Quando il browser viene reindirizzato sulla pagina di GoogleMap genererà questo evento
B4X:
Sub WebWiew_OverrideUrl (Url As String) As Boolean
   'URL Indirizzo da cui ricavare le coordinate

  if Url.StartsWith("https://www.google.com/maps/dir//") then
      Coordinate=Url.substring(Url.InexdOf("//")+2)
      ' eccetera, qui sbizzarrsci la tua creatività per tirare fuori le coordinate

      ' Avvia oggetto GoogleMap library con le coordinate trovate
  End iF
End Sub

Con GoogleMap Library tracci il percorso. (Ovviamente devi accendere il GPS sul dispositivo)

Spero che ti sia stato utile. Ammesso che io abbia capito bene cosa devi fare.:p:p:p:p
 
Last edited:

Star-Dust

Expert
Licensed User
Longtime User
Te lo auguro. E ti fornisco una seconda soluzione.

Dopo aver trovatole coordinate, senza usare GoogleMap Library, puoi avviare l'App GoogleMap dal tuo codice

B4X:
Sub WebWiew_OverrideUrl (Url As String) As Boolean
   'URL Indirizzo da cui ricavare le coordinate

  if Url.StartsWith("https://www.google.com/maps/dir//") then
      Intent1.Initialize(Intent1.ACTION_VIEW, url)
      Intent1.SetComponent("android/com.android.internal.app.ResolverActivity")
      StartActivity(Intent1)  
      Return True ' Comando elaborato e WebView non carica l'url
  Else
      Return False ' Comando non elaborato localmente e WebView prosegue a caricare l'url
  End iF
End Sub
 
Last edited:

francesco paolo lavecchia

Member
Licensed User
Ciao a tutti,

devo fare la stessa cosa con B4i.

Ho creato il mio app id
sono diventato sviluppatore ma non riesco a creare/scaricare il certiicato.
Da youtube ho visto diverse cose ma non funzionano... che devo fare?

Grazie
 
Top