最近我在Windows Phone Store上发布了我的新应用程序"TimeNoti"。对于大多数用户来说,它工作得很好,但有些用户抱怨它在启动时崩溃,所有这些用户都来自欧洲地区,如瑞典,芬兰和德国。我错过什么了吗?应用程序在其他地区的所有手机上运行良好,但无法在欧洲地区的同一部手机上启动。
我正在给我的应用程序附加一个链接。链接:http://www.windowsphone.com/s?appid=8e998c15 - 9813 - 4411 - bd7b - 76 f397f13fcb
提前感谢。
方面,理查德·乔治
找到主要问题后,我试图找出它的替代方法。
问题是当手机的语言设置为非英语语言(在这种情况下为芬兰语)时,DateTimeZone CurrentTZ = DateTimeZoneProviders.Tzdb.GetSystemDefault();
给出异常。在搜索了很多关于这个我无法找到一个合适的解决方案,所以我创造了我自己的解决方案。
解决方案:
替换
Instant Current = SystemClock.Instance.Now;
DateTimeZone CurrentTZ = DateTimeZoneProviders.Tzdb.GetSystemDefault();
ZonedDateTime ZDT = Current.InZone(CurrentTZ);
Result = ZDT.WithZone(TargetDTZ);
与
LocalDateTime Current = LocalDateTime.FromDateTime(DateTime.UtcNow);
DateTimeZone CurrentTZ = DateTimeZoneProviders.Tzdb["Etc/GMT"];
ZonedDateTime ZDT = Current.InZoneLeniently(CurrentTZ);
Result = ZDT.WithZone(TargetDTZ);
我知道这不是这个问题最干净的解决方案,但它有效。如果有人能给我的问题提供更好的解决方案,我很乐意接受。