/ / Android Location.convert अवैध तर्क अपवाद फेंकना - Android, स्थान

एंड्रॉइड लोकेशन। कन्वर्ट अवैध तर्क अपवाद फेंकना - एंड्रॉइड, स्थान

यह वाक्य फेंक रहा है IllegalArgumentException। मैं अभी भी "इस प्रारूप में गलत क्या है, इसका पता नहीं लगा सकता।" [+-]DDD:MM.MMMMM जैसा कि प्रलेखन कहता है।

double latitude = Location.convert("-19:59.646");

उत्तर:

उत्तर № 1 के लिए 1

स्थान के लिए Android प्लेटफ़ॉर्म कोड जैसा दिखता है। परिवर्तित (स्ट्रिंग समन्वय) doesn "t मिनट दशमलव मान 59 से अधिक के लिए अनुमति देते हैं:

https://github.com/android/platform_frameworks_base/blob/master/location/java/android/location/Location.java#L255

स्थान API डॉक्स में निर्दिष्ट बजाय FORMAT_SECONDS या FORMAT_DEGREES प्रारूप का उपयोग करने का प्रयास करें:

http://developer.android.com/reference/android/location/Location.html

उदाहरण के लिए, FORMAT_SECONDS (DDD: MM: SS.SSSSS) में आपका नंबर -19: 59: 38.76 होगा।

तो कोड होगा:

double latitude = Location.convert("-19:59:38.76");

मैंने सत्यापित किया कि यह FORMAT_SECONDS प्रारूप का उपयोग करके Android पर काम करता है।


जवाब के लिए 0 № 2

आपको शायद उस प्रारूप से बिल्कुल मेल खाना है, इसलिए इसे शून्य के साथ पैड करें।

double latitude = Location.convert( "-019:59.64600" );