저는 Apple TV 용 스트리밍 TV 응용 프로그램 개발자입니다. 테스트 비행을 통해 앱 버전을 설치하면 날짜/시간이 예상 한 것과 다를 수 있습니다. NSDate()를 사용하여 검색합니다. 예상대로 UTC +000을 반환해야하지만 그렇지 않습니다. 이 가정에서 실수를 배제하기 위해 NSDateFormatter를 시도하고 Apple TV의 로케일을 사용했습니다. 내 Apple TV의 시간/지역은 암스테르담으로 설정되어 있습니다. NSDate()의 결과와 서식을 지정한 결과를 표시합니다. 내가 보는 결과는 다음과 같습니다. NSDate()는 UTC +000이 아니며 형식을 지정하면 암스테르담 시간/날짜가 아닙니다. 이것은 테스트 비행을 통해 설치 한 후에 만 발생합니다. 앱을 닫을 때 Apple TV의 언어를 다른 언어로 변경하고 이전 언어로 변경 한 다음 NSDate()에서 결과를 다시 열면 형식 지정 결과가 정확합니다! 애플 티비처럼 약간 새로 고침을했다. (노트 : 나는 시간/존이 아닌 언어를 바꾼다.) 누군가 여기서 일어나는 일과 내가 작성한 코드에서 누락 된 것을 말할 수 있습니까?TestFlight 설치 후 NSDate()가 UTC +000을 반환하지 않습니다.
private func stringFromDateFormat() -> String {
let dateFormatForFormatter:String = "dd-MM-yyyy | HH:mm"
let todaysDate:NSDate = NSDate()
let locale:NSLocale = NSLocale.currentLocale()
let dateFormatter:NSDateFormatter = NSDateFormatter()
dateFormatter.calendar = NSCalendar(calendarIdentifier:NSCalendarIdentifierGregorian)
dateFormatter.locale = NSLocale(localeIdentifier: locale.localeIdentifier)
dateFormatter.dateFormat = dateFormatForFormatter
return dateFormatter.stringFromDate(todaysDate)
}
위의 기능을 사용할 때 암스테르담 시간/날짜는 반환되지 않지만 Apple 장치에서는이 시간대가 설정됩니다. 다시 말하지만, 테스트 비행에서 설치하는 경우에만 발생합니다. 그리고 위에 설명 된 장치의 이상한 언어 전환으로 인해 문제가 옳았습니다. 때로는 NSDate()를 표시하는 데 며칠이 걸릴 수 있습니다. 경험 한 것은 30 일이었습니다.