我面临一个非常奇怪的问题。解析此字符串时2016-09-06 05:18:06.023 PM
,出现以下异常-java.text.ParseException: Unparseable date: "2016-09-06 05:18:06.023 PM" (at offset 24)
奇怪的是,发生此异常的设备是朋友的 Nexus 5 。但是,如果我在 Nexus 5 / 其他几个模拟器
上调试了相同的字符串,则可以正常工作。
这是我正在使用的代码。SimpleDateFormat
属于java.text
包。Date
属于java.util
包
SimpleDateFormat formatGMT = new SimpleDateFormat("yyyy-MM-dd KK:mm:ss.SSS a");
formatGMT.setTimeZone(TimeZone.getTimeZone("GMT"));
try {
date = formatGMT.parse("2016-09-06 05:18:06.023 PM");
} catch (ParseException e) {
Crashlytics.log(Log.ERROR, "DB Insertion error", e.getMessage().toString());
Crashlytics.logException(e);
e.printStackTrace();
}
这是完整的堆栈跟踪。
# Crashlytics - plaintext stacktrace Wed, 07 Sep 2016 03:37:44 GMT
# Platform: android
# Bundle Identifier: com.mypackage.app
# Issue #: 306
# Date: 2016-09-06T17:18:04Z
# OS Version: 6.0.1
# Device: Nexus 5
# RAM Free: 36.5%
# Disk Free: 11%
#0. Crashed: pool-3-thread-3: 0 0 0x0000000000000000
at java.text.DateFormat.parse(DateFormat.java:579)
at com.mypackage.app.MyService$16$1.execute(MyService.java:1670)
at io.realm.Realm$1.run(Realm.java:1187)
at io.realm.internal.async.BgPriorityRunnable.run(BgPriorityRunnable.java:34)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
--
Non-fatal Exception: java.text.ParseException: Unparseable date: "2016-09-06 05:18:06.023 PM" (at offset 24)
at java.text.DateFormat.parse(DateFormat.java:579)
at com.mypackage.MyService$16$1.execute(MyService.java:1670)
at io.realm.Realm$1.run(Realm.java:1187)
at io.realm.internal.async.BgPriorityRunnable.run(BgPriorityRunnable.java:34)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
#0. Crashed: pool-3-thread-3: 0 0 0x0000000000000000
at java.text.DateFormat.parse(DateFormat.java:579)
at com.mypackage.MyService$16$1.execute(MyService.java:1670)
at io.realm.Realm$1.run(Realm.java:1187)
at io.realm.internal.async.BgPriorityRunnable.run(BgPriorityRunnable.java:34)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
设备默认语言环境中的am / pm符号可能会影响它,因此请尝试使用以下语言环境来解析日期,这将对您有所帮助。
SimpleDateFormat formatGMT = new SimpleDateFormat("yyyy-MM-dd KK:mm:ss.SSS a", Locale.US);
formatGMT.setTimeZone(TimeZone.getTimeZone("GMT"));
try
{
date = formatGMT.parse("2016-09-06 05:18:06.023 PM");
}
catch (ParseException e)
{
Crashlytics.log(Log.ERROR, "DB Insertion error", e.getMessage().toString());
Crashlytics.logException(e);
e.printStackTrace();
}
我的Android应用程序无法安装在一些“随机”、较旧的API设备上(任何低于API级别25的设备),错误如下: 所以,基本上看起来… API 我见过类似的问题,答案与小写的包名有关。我已经有了。 有人有什么想法吗? 舱单: BTW我用的是Visual Studio 2019和一夫一妻制3.7
问题内容: 我看到Google Play中与Fabric / Crashlytics相关的崩溃。从正常的Crashlytics更新到新的Fabric Crashlytics之后,发生了这种情况。我只能在其中一台设备(Galaxy S2)上重现它。我拥有的所有其他设备(Nexus 5和S4)都没有崩溃。这是堆栈跟踪: 这是我的build.gradle的内容: 问题答案: 我只是凭直觉就知道了!升级到
问题内容: 我收到以下错误:“ java.text.ParseException:无法解析的日期:“ 2011年8月31日09:53:19””具有以下格式: 有人看到这个问题吗? 问题答案: 确保您使用正确的语言环境。(构造函数使用 系统默认的语言环境 ,它可能不是您要使用的 语言环境 。) 这在我的机器上工作正常: (例如,使用时会产生。)
和onActivityResult 和错误的堆栈跟踪 stack_trace=java.lang.runtimeException:未能将结果ResultInfo{who=null,request=1,result=-1,data=intent{act=inline-data(havs extras)}}传递到活动{com.madhours/com.madhours.activities.acti
我在一个Android自定义启动器工作。该应用程序在一些手机上运行完美,但在其他手机上不启动。启动应用程序时发生以下错误。
最近,我们在Android应用程序中增加了对Chromecast的支持,但在对各种移动设备(手机和平板电脑)的扩展测试中,发现在许多移动设备上,Flipps应用程序都没有发现Chromecast。在相同的设备上,我们使用了最新版本的官方Chromecast SDK演示应用程序进行测试,该应用程序从https://github.com/googlecast/castvideo-Android下载(主