Obtenir la localisation android Kotlin

J'ai récemment ajouté obtenir la localisation de la fonction. Lorsque j'essaie de montrer la longitude et la latitude, elle renvoie zéro.

Ce mon: LocationListener classe:

inner class MylocationListener: LocationListener {
    constructor():super(){
        mylocation= Location("me")
        mylocation!!.longitude
        mylocation!!.latitude
    }

    override fun onLocationChanged(location: Location?) {
        mylocation=location
    }

    override fun onStatusChanged(p0: String?, p1: Int, p2: Bundle?) {}

    override fun onProviderEnabled(p0: String?) {}

    override fun onProviderDisabled(p0: String?) {}
}

Et mon GetUserLocation fonction:

fun GetUserLocation(){
    var mylocation= MylocationListener()
    var locationManager=getSystemService(Context.LOCATION_SERVICE) as LocationManager
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,0,0.1f,mylocation)
}

Et cela ma fonction pour renvoyer mon longitude et de la latitude:

fun getLoction (view: View){
    prgDialog!!.show();

    GetUserLocation()

    button.setTextColor(getResources().getColor(R.color.green));
    textView.text = mylocation!!.latitude.toFloat().toString()
    Toast.makeText(this, mylocation!!.latitude.toFloat().toString(), Toast.LENGTH_LONG).show()
    Toast.makeText(this, mylocation!!.longitude.toFloat().toString(), Toast.LENGTH_LONG).show()

    prgDialog!!.hide()
} 
  • Elle renvoie zéro ou la valeur null?
  • Votre demande a obtenu les autorisations requises pour l'emplacement? Avez-vous tester sur l'appareil ou l'émulateur? Est gps actif sur l'appareil?
InformationsquelleAutor Nour Medhat | 2017-08-30