Update 29. Oktober 2015: Möglicherweise haben die Ursache dafür gefunden. Ich erstelle eine Gradient-Ebene nach this StackOverflow post - es funktioniert perfekt für mich und alle anderen, mit denen ich getestet habe, aber könnten andere Leute Probleme damit haben?iPhone App Absturz: UIKit
CAGradientLayer * g = [CAGradientLayer layer];
UIColor * colourFrom = [UIColor colorWithRed:0.1 green:0.7 blue:0.3 alpha:1.0];
UIColor * colourTo = [UIColor colorWithRed:0.1 green:0.8 blue:0.4 alpha:1.0];
g.frame = self.view.bounds;
g.cornerRadius = 10;
g.startPoint = CGPointMake(0.0, 0.5);
g.endPoint = CGPointMake(1.0, 0.5);
g.colors = [NSArray arrayWithObjects:(id)[colourFrom CGColor],
(id)[colourTo CGColor],
nil];
-Update 27. Oktober 2015: Noch diese Abstürze zu sehen, in von Crashlytics kommen.
-Update 26. Oktober 2015: Ich fand this thread on StackOverflow, die genau das gleiche Problem scheint zu sein, wie ich bin mit (aber ohne Antworten ..), aber sie sind Facebook/Twitter-Aktion Blätter verwendet, die ich bin nicht. Nur etwas, um das Problem zu diagnostizieren.
freigegeben nur eine App in den App Store, und wir sind ein kleiner Prozentsatz der Nutzer (~ 2%) mit diesem Absturz in Crashlytics sehen:
Es scheint, dass es nur mit erscheinende iOS 9, aber es passiert über alle Geräte.
Schwerwiegende Ausnahme: NSInternalInconsistencyException In dieser Situation werden nur RGBA- oder weiße Farbräume unterstützt.
Persönlich ich laufen ein iPhone 6 mit 9.1 und bin nicht das Problem. Ich habe auch in Simulatoren versucht und wieder keine Probleme, daher bin ich mir nicht sicher wie dieser Bug tatsächlich auftaucht. Der Stack-Trace von Crashlytics befindet sich darunter.
Es scheint, als ob ein UIColor
zu einem NSDictionary
hinzugefügt wird, ohne verschlüsselt zu werden, aber das mache ich nirgendwo in der App. Es scheint auch, als ob es etwas mit UIRemoteViewController
zu tun haben könnte, aber ich benutze das nicht in der App (es sei denn, die Anmeldung bei Facebook verursacht das - ich habe versucht, mit Facebook auf dem Telefon und Simulatoren einloggen, aber wieder kann ich nicht Lassen Sie diesen Fehler erscheinen).
Hat jemand eine Idee von was könnte dies verursachen?
Thread : Fatal Exception: NSInternalInconsistencyException
0 CoreFoundation 6512725832 __exceptionPreprocess
1 libobjc.A.dylib 6869942144 objc_exception_throw
2 CoreFoundation 6512725528 +[NSException raise:format:]
3 Foundation 6528403996 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:]
4 UIKit 6606881444 -[UIColor encodeWithCoder:]
5 Foundation 6528169072 _encodeObject
6 Foundation 6528197336 +[NSKeyedArchiver archivedDataWithRootObject:]
7 UIKit 6609904352 -[_UIAppearanceRecorder _recordInvocation:withClassName:containerClassNames:traitCollection:selectorString:forRemoteProcess:]
8 UIKit 6609884356 __54+[_UIAppearance _recordersExcludingSource:withWindow:]_block_invoke
9 CoreFoundation 6511594744 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke
10 CoreFoundation 6511594448 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]
11 UIKit 6609883592 +[_UIAppearance _recordersExcludingSource:withWindow:]
12 UIKit 6611900724 UIViewServiceCurrentAppearanceSerializedRepresentations
13 UIKit 6610654700 +[_UIRemoteViewController _requestViewController:traitCollection:fromServiceWithBundleIdentifier:service:connectionHandler:]
14 UIKit 6610654160 +[_UIRemoteViewController requestViewControllerWithService:connectionHandler:]
15 UIKit 6609355772 __117-[NSExtension(UIViewControllerAdditions) instantiateViewControllerWithInputItems:listenerEndpoint:connectionHandler:]_block_invoke_2
16 libdispatch.dylib 6878402280 _dispatch_call_block_and_release
17 libdispatch.dylib 6878402216 _dispatch_client_callout
18 libdispatch.dylib 6878424496 _dispatch_main_queue_callback_4CF
19 CoreFoundation 6512427512 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__
20 CoreFoundation 6512418912 __CFRunLoopRun
21 CoreFoundation 6511561888 CFRunLoopRunSpecific
22 GraphicsServices 6701891720 GSEventRunModal
23 UIKit 6602887164 UIApplicationMain
24 MyApp 4296179280 main (main.m:16)
25 libdyld.dylib 6878603448 start
-Update mit Codebeispielen
Diese im application:didFinishLaunchingWithOptions
genannt wird:
// Make the app look pretty
// Turn the status bar color white
[[UIApplication sharedApplication] setStatusBarHidden:NO];
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
// Nav bar: Background colour
[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:0.5 green:0.5 blue:0.5 alpha:1.0]];
// Nav bar: White text
[[UINavigationBar appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor colorWithRed:0.2 green:0.2 blue:0.2 alpha:1.0], NSForegroundColorAttributeName, nil]];
// Nav bar: Tint colour
[UINavigationBar appearance].tintColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"TintNavBar"]];
// Tab Bar: Background color
[[UITabBar appearance] setBarTintColor:[UIColor colorWithRed:0.5 green:0.5 blue:0.5 alpha:1.0]];
// Tab bar: Tint colour
[UITabBar appearance].tintColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"gradientSmall"]];
// UIControlSegment: Change the colours to just white
// @url https://stackoverflow.com/a/21484829/4027036
[[UISegmentedControl appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName:[Ui getColour:UI_BODY_PRIMARY]}
forState:UIControlStateNormal];
Können Sie die Codezeile posten, wo Sie diesen Absturz haben? – Sujania
@Sujania Nein, weil ich nicht sicher bin, woher es tatsächlich kommt - ich kann es nicht reproduzieren, und die Stack-Trace zeigt auch nicht an wo. – cjhill
nach meinem Lesen ist dies der Fehler mit UIAperence oder [UIColor colorWithPatternImage:] – Nik