【问题标题】:Xamarin Forms Android - App won't start after changing OS time to earlier dateXamarin Forms Android - 将操作系统时间更改为较早日期后应用程序无法启动
【发布时间】:2020-06-18 18:01:53
【问题描述】:

我遇到一个问题,即我将 Android 操作系统日期更改为较早的日期后,我的 Xamarin Forms Android 应用程序无法启动(黑屏)。我只有在没有通过调试器连接时才会发生。

我正在使用最新版本的 Visual Studio 和 Xamarin。在这篇文章的时候,我测试了:

  • Visual Studio 2019 - 16.6.2(也发生在 16.5.3 中)
  • Xamarin Forms 4.7.0.968(也出现在以前的 4.X 版本中)
  • 手机:三星 Galaxy S8,Android 9。

重现步骤:

  • 使用“空白页”模板创建示例 Xamarin Forms 应用程序。
  • 首先通过调试器运行它(应用程序运行并显示欢迎消息)。
  • 关闭应用程序。
  • 将操作系统日期/时间设置为手动并返回一天。
  • 从手机本身(不使用调试器)运行应用程序。

在最后一步之后,应用程序不会启动,而是会显示一个空白屏幕。没有崩溃。当应用程序关闭时将时间重置为自动日期,应用程序将再次正常运行。如果我执行相同的过程但始终使用调试器启动应用程序,那么一切正常。

有人知道如何解决这个问题吗?

编辑:由于在附加调试器时不会发生这种情况,因此我添加了日志,以便我可以使用 logcat 知道它到达的位置。当它挂起时,它似乎甚至没有到达我的 MainActivity 类的“Oncreate”。

【问题讨论】:

  • 发布版本也会发生这种情况吗?
  • @Cheesebaron 是的,调试和发布。正如我刚才所做的编辑中提到的,当它挂起时,它甚至没有到达我的“MainActivity”的“OnCreate”方法。

标签: android xamarin xamarin.forms xamarin.android


【解决方案1】:

我尝试了你的步骤并重现了这个问题,它在我这边显示白屏,它似乎卡住了。

这个问题只发生在我将时间设置为较早的日期时,如果我将其设置为较晚的日期,它会正常工作。

我已经在 github 上提出了这个问题:https://github.com/xamarin/Xamarin.Forms/issues/11128,你可以监控进度。

【讨论】:

  • 太棒了!很高兴听到我不是唯一一个。昨天我也通过Visual Studio(here)提交了问题。我应该删除请求吗?
  • 你可以保留请求
猜你喜欢
  • 2014-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-25
  • 2018-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多