Подтвердить что ты не робот

"Недопустимый контекст 0x0" после перехода на iOS 9

Я перенесла приложение в iOS 9, и оно работает, как обычно, но есть три сообщения журнала:

<Error>: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextTranslateCTM: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
<Error>: CGContextRestoreGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

Может быть, помогает следующее сообщение от Crashlytics:

[Crashlytics:Crash] Warning: iOS 9 workaround for binary image loading issue in place.

Кто-нибудь знает, как его исправить?

4b9b3361

Ответ 1

Это происходит, когда есть определение UIViewControllerBasedStatusBarAppearance с false в info.plist.

Если вам это не нужно, вы можете установить ключ <key>UIViewControllerBasedStatusBarAppearance</key> в true в файле вручную или изменить параметр View controller-based status bar appearance из Info в YES.

Кроме того, я видел несколько сообщений, в которых говорится, что с этим нет никаких проблем. Насколько я знаю, нет способа установить UIViewControllerBasedStatusBarAppearance из кода, поэтому, я думаю, нам придется подождать, пока Apple решит эту проблему. Вы можете найти более здесь.

Позже Edit: Кажется, что iOS 9.1 решает эту проблему. Из последнего стабильного Xcode, работающего на iOS 9.1, не возникает ошибок, в то время как у 9.0 все еще есть проблемы выше.

Ответ 2

Apple заявила, что вы можете спокойно игнорировать эти сообщения ': CGContextSaveGState: недопустимый контекст 0x0. "

Проверьте различные форумы Apple dev или области поддержки.