Dieser Satz wirft IllegalArgumentException
. Ich kann immer noch nicht herausfinden, was mit diesem Format falsch ist [+-]DDD:MM.MMMMM
wie Dokumentation sagt.
double latitude = Location.convert("-19:59.646");
Antworten:
1 für die Antwort № 1Scheint, dass der Android-Plattformcode für Location.convert (String coordinate) keine winzigen Dezimalwerte größer als 59 zulässt:
Verwenden Sie stattdessen das Format FORMAT_SECONDS oder FORMAT_DEGREES, wie in den Standort-API-Dokumenten angegeben:
http://developer.android.com/reference/android/location/Location.html
Zum Beispiel wäre Ihre Nummer in FORMAT_SECONDS (DDD: MM: SS.SSSSS) -19: 59: 38.76.
Also wäre der Code:
double latitude = Location.convert("-19:59:38.76");
Ich habe überprüft, dass dies unter Android mit dem FORMAT_SECONDS-Format funktioniert.
0 für die Antwort № 2
Sie müssen dieses Format wahrscheinlich genau abgleichen, also füllen Sie es mit Nullen auf.
double latitude = Location.convert( "-019:59.64600" );