Having issues troubleshooting this error: Unparseable date: "June 17, 1985 11:33:00 UTC"
Having issues troubleshooting this error: Unparseable date: "June 17, 1985 11:33:00 UTC"
这似乎只发生在我的一小部分用户设备上,我无法重现这个问题,但它会破坏我的 Crashlytics 报告。
Non-fatal Exception: java.text.ParseException: Unparseable date: "June 17, 1985 11:33:00 UTC" (at offset 0)
at java.text.DateFormat.parse(DateFormat.java:579)
at me.calebjones.spacelaunchnow.content.services.LaunchDataService.parsePreviousResult(LaunchDataService.java:548)
at me.calebjones.spacelaunchnow.content.services.LaunchDataService.getPreviousLaunches(LaunchDataService.java:243)
at me.calebjones.spacelaunchnow.content.services.LaunchDataService.onHandleIntent(LaunchDataService.java:115)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:66)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
似乎卡住了多个日期,但它们都是相同的格式。这是我解析它的代码。
SimpleDateFormat df = new SimpleDateFormat("MMMM dd, yyyy kk:mm:ss zzz");
df.toLocalizedPattern();
JSONObject response = new JSONObject(result);
JSONArray launchesArray = response.optJSONArray("launches");
for (int i = 0; i < launchesArray.length(); i++) {
try {
launch.setLaunchDate(df.parse(launchesObj.optString("net")));
} catch (ParseException e) {
launch.setLaunchDate(null);
}
}
设置语言环境解决了这个问题。
SimpleDateFormat df = new SimpleDateFormat("MMMM dd, yyyy kk:mm:ss zzz", Locale.US);
这似乎只发生在我的一小部分用户设备上,我无法重现这个问题,但它会破坏我的 Crashlytics 报告。
Non-fatal Exception: java.text.ParseException: Unparseable date: "June 17, 1985 11:33:00 UTC" (at offset 0)
at java.text.DateFormat.parse(DateFormat.java:579)
at me.calebjones.spacelaunchnow.content.services.LaunchDataService.parsePreviousResult(LaunchDataService.java:548)
at me.calebjones.spacelaunchnow.content.services.LaunchDataService.getPreviousLaunches(LaunchDataService.java:243)
at me.calebjones.spacelaunchnow.content.services.LaunchDataService.onHandleIntent(LaunchDataService.java:115)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:66)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
似乎卡住了多个日期,但它们都是相同的格式。这是我解析它的代码。
SimpleDateFormat df = new SimpleDateFormat("MMMM dd, yyyy kk:mm:ss zzz");
df.toLocalizedPattern();
JSONObject response = new JSONObject(result);
JSONArray launchesArray = response.optJSONArray("launches");
for (int i = 0; i < launchesArray.length(); i++) {
try {
launch.setLaunchDate(df.parse(launchesObj.optString("net")));
} catch (ParseException e) {
launch.setLaunchDate(null);
}
}
设置语言环境解决了这个问题。
SimpleDateFormat df = new SimpleDateFormat("MMMM dd, yyyy kk:mm:ss zzz", Locale.US);