最近开发中遇到一个问题,服务器返回的时间戳,在64位iPhone上显示没有任何问题,但在32位(iPhone5之前的机子,包括iPhone5)总是显示46年前,属实蛋疼了一把.....
话不多说,上代码
[EventWebService setEvent:self.eventCellViewModel.eventId key:@"startTime" value:[NSNumber numberWithInteger:self.startTimeLong*1000] success:^(NSDictionary *result){
[self.view makeToast:@"保存成功!" duration:1 position:CSToastPositionCenter];
}
错误
[EventWebService setEvent:self.eventCellViewModel.eventId key:@"startTime" value:[NSNumber numberWithLongLong:self.startTimeLong*1000] success:^(NSDictionary *result) {
[self.view makeToast:@"保存成功!" duration:1 position:CSToastPositionCenter];
}
正确
整型或者浮点型long型都不可以做value,所以要转换成 NSNumber型。
只要把integer型或者long型,转换成longlong型就可以解决时间戳在32位机器上显示不正确的问题了。