Italian Permessi GPS con Android 12

Walter Scafati

Active Member
Licensed User
Longtime User
Salve a tutti,
ho una applicazione che avevo sviluppato qualche tempo fa e che utilizza il GPS del telefono per leggere le coordinate latitudine e longitudine. Installato su uno smartphone con Android 12 però il GPS sembra non lavorare.
Ho anche gestito i permessi sul manifest:

B4X:
AddManifestText(<uses-permission android:name="android.permission.PERMISSION_ACCESS_FINE_LOCATION"/>)

mentre in Activity_create del codice:


B4X:
    If gps1.GPSEnabled = False Then
        ToastMessageShow("Abilitare il GPS sul tuo Device.", True)
        StartActivity(gps1.LocationSettingsIntent) 'Will open the relevant settings screen.
    Else
        Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
        Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
        If Result Then
            gps1.Start(0, 0) 'Listen to GPS with no filters.
        Else
            ToastMessageShow("GPS No permission!!!", True)
            Log("GPS No permission!!!")
        End If
    End If
 
Last edited:

drgottjr

Well-Known Member
Licensed User
Longtime User
non dici esattamente cosa succede (qualcun errore...?), pero almeno il permesso e':
android.permission.ACCESS_FINE_LOCATION
e non:
android.permission.PERMISSION_ACCESS_FINE_LOCATION

se ci sono altri problemi, vedremo
 
Upvote 0

Walter Scafati

Active Member
Licensed User
Longtime User
non dici esattamente cosa succede (qualcun errore...?), pero almeno il permesso e':
android.permission.ACCESS_FINE_LOCATION
e non:
android.permission.PERMISSION_ACCESS_FINE_LOCATION

se ci sono altri problemi, vedremo
La sub GPS_LocationChanged non riceve nulla e non viene mai stampato il Log

B4X:
Sub GPS_LocationChanged (Location1 As Location)
    Latitude = Location1.Latitude
    Longitude = Location1.Longitude
    Log(Latitude & " -- " & Longitude)
End Sub

B4X:
Sub Process_Globals

    Dim gps1 As GPS

B4X:
Sub Activity_Create(FirstTime As Boolean)
   
    If FirstTime Then
        gps1.Initialize("gps")
    End If

If gps1.GPSEnabled = False Then
        ToastMessageShow("Abilitare il GPS sul tuo Device.", True)
        StartActivity(gps1.LocationSettingsIntent) 'Will open the relevant settings screen.
    Else
        Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
        Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
        If Result Then
            gps1.Start(0, 0) 'Listen to GPS with no filters.
        Else
            ToastMessageShow("GPS No permission!!!", True)
            Log("GPS No permission!!!")
        End If
    End If
 
Upvote 0

drgottjr

Well-Known Member
Licensed User
Longtime User
e il manifest? l'ai cambiato?
 
Upvote 0

drgottjr

Well-Known Member
Licensed User
Longtime User
il tuo codice funziona per me... android 12 non importa che sia GPS oppure GNSS. le due librerie funzionano con il tuo codice
carica tutto il progetto. qualcosa non quadra.
 
Upvote 0

Walter Scafati

Active Member
Licensed User
Longtime User
il tuo codice funziona per me... android 12 non importa che sia GPS oppure GNSS. le due librerie funzionano con il tuo codice
carica tutto il progetto. qualcosa non quadra.
Risolto! Era il telefono che si era bloccato, dopo un riavvio ha funzionato tutto bene. Grazie
 
Upvote 0
Top