我有一种方法可以在iOS中返回GMT时间。它在大多数实例上都能正常工作,并返回类似2016-03-23T17:13:22Z
的字符串。但是,我们在生产中注意到,对于某些用户,返回的日期字符串无效。例如,2016-03-24T1:02:44 PMZ
或2016-03-23T7:45:16 PMZ
。 PMZ
代表什么?我们尝试通过更改设置中的电话区域,日历等来重现该问题,但不能。
以下是我用来生成GMT时间的方法
+ (NSString *)gmtTimeString {
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
return [dateFormatter stringFromDate:[NSDate date]];
}
有人可以告诉我我做错了什么吗? Matt指出它似乎是重复的并且设置语言环境可能是一个修复?但是,有人可以让我知道什么设备设置可能导致此错误,以便我可以稍后验证修复?