2015-01-06 14 views
7

Otrzymuję dziwną awarię wymienioną w crashlytics dla metody UIImage imageNamed:. Ta awaria pojawia się tylko w systemie iOS8 i jest stałym problemem dla wielu użytkowników. Chociaż, co dziwne, nie udało mi się odtworzyć problemu podczas testowania.ios8 UIImage imageNamed: crash

Proszę odnieść się do obrazu rejestru awarii z crashlytics. enter image description here

Myślę, że to może być coś z wewnętrznego działania metody imageNamed:.

+1

Sprawdź swoją nazwę obrazu z uwzględnieniem wielkości liter ".png" i ".PNG" –

+0

Bez przywoływanego kodu źródłowego aplikacji nie można zrozumieć, co robisz, i podać dokładne możliwości. – Kerni

+0

Czy na pewno nie wysyłasz wartości zerowej/NSNull do imageNamed? – rounak

Odpowiedz

6

Problem został rozwiązany po przeniesieniu metody UIImage imageNamed: z wątku tła do wątku głównego. Nawiasem mówiąc, powinno to zawsze spowodować awarię w czasie działania, ponieważ ta metoda powinna działać tylko w głównym wątku (jak wszystkie metody UIKit), ale z jakiegoś powodu poprzednie wersje iOS pozwoliły jej działać. W iOS8 chociaż zdarza się częściej, ale nie zawsze.

+1

DZIĘKUJEMY TAK DUŻO! Miałem ten problem i wyrywałem sobie włosy, próbując dowiedzieć się, co się dzieje. Moja aplikacja używała '[UIImage imageNamed:]' w CGPatternCalback w 'DrawRect'. Po prostu przenieś odwołanie do UIImage do menedżera i odwołaj się do niego zamiast tworzenia nowego UIImage za każdym razem. –