Reputation: 1539
Is this iOS crash log symbolicated? It came from beta app review, so didn't auto symbolicate, but I imported it into the device crash logs, which apple said would use the dsym file to symbolicate.
If it is, then how do I interpret this and where the problem is? It doesn't crash on any of my devices or simulators, or our internal testers...
Apple said it crashes on launch and when clicking the button on the home screen to start.
Date/Time: 2018-04-04 08:46:45.5260 -0700
Launch Time: 2018-04-04 08:46:42.5743 -0700
OS Version: iPhone OS 11.2.6 (15D100)
Baseband Version: 6.30.04
Report Version: 104
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Triggered by Thread: 0
Application Specific Information:
abort() called
Filtered syslog:
None found
Last Exception Backtrace:
0 CoreFoundation 0x18502b164 __exceptionPreprocess + 124
1 libobjc.A.dylib 0x184274528 objc_exception_throw + 55
2 UIKit 0x18f22cfdc -[UIPopoverPresentationController presentationTransitionWillBegin] + 2775
3 UIKit 0x18e933b84 __71-[UIPresentationController _initViewHierarchyForPresentationSuperview:]_block_invoke + 2247
4 UIKit 0x18e931648 __56-[UIPresentationController runTransitionForCurrentState]_block_invoke + 467
5 UIKit 0x18e853aa8 _runAfterCACommitDeferredBlocks + 291
6 UIKit 0x18e846e5c _cleanUpAfterCAFlushAndRunDeferredBlocks + 287
7 UIKit 0x18e5d8464 _afterCACommitHandler + 131
8 CoreFoundation 0x184fd2cdc __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 31
9 CoreFoundation 0x184fd0694 __CFRunLoopDoObservers + 411
10 CoreFoundation 0x184fd0c50 __CFRunLoopRun + 1291
11 CoreFoundation 0x184ef0c58 CFRunLoopRunSpecific + 435
12 GraphicsServices 0x186d9cf84 GSEventRunModal + 99
13 UIKit 0x18e6495c4 UIApplicationMain + 235
14 FriendlyEats 0x1003c196c 0x1003bc000 + 22892
15 libdyld.dylib 0x184a1056c start + 3
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x0000000184b402e8 __pthread_kill + 8
1 libsystem_pthread.dylib 0x0000000184c552f8 pthread_kill$VARIANT$mp + 396
2 libsystem_c.dylib 0x0000000184aaefbc abort + 140
3 libc++abi.dylib 0x000000018424b068 __cxa_bad_cast + 0
4 libc++abi.dylib 0x000000018424b210 default_unexpected_handler+ 8720 () + 0
5 libobjc.A.dylib 0x0000000184274810 _objc_terminate+ 34832 () + 124
6 libc++abi.dylib 0x000000018426354c std::__terminate(void (*)+ 107852 ()) + 16
7 libc++abi.dylib 0x0000000184263158 __cxa_rethrow + 144
8 libobjc.A.dylib 0x00000001842746e8 objc_exception_rethrow + 44
9 CoreFoundation 0x0000000184ef0cc4 CFRunLoopRunSpecific + 544
10 GraphicsServices 0x0000000186d9cf84 GSEventRunModal + 100
11 UIKit 0x000000018e6495c4 UIApplicationMain + 236
12 FriendlyEats 0x00000001003c196c 0x1003bc000 + 22892
13 libdyld.dylib 0x0000000184a1056c start + 4
The file for the home screen (apple's report said it crashed on launching the app and clicking the button on the home screen that comes from this file).
import UIKit
class HomeViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
var image = UIImage()
@IBAction func unwindToThisHomeController(_ segue: UIStoryboardSegue) {
}
@IBOutlet weak var backgroundButton: UIButton!
@IBAction func startButton(_ sender: Any) {
startButtonTapped()
}
let imagePicker = UIImagePickerController()
func startButtonTapped(){
let alertController = UIAlertController(title: nil, message: "Select from where you would like to import your landscape photo.", preferredStyle: .actionSheet)
let cancelAction = UIAlertAction(title: "Cancel", style: .cancel) { action in
// ...
}
alertController.addAction(cancelAction)
let OKAction = UIAlertAction(title: "Photo Library", style: .default) { action in
self.imagePicker.allowsEditing = false
self.imagePicker.sourceType = .photoLibrary
self.imagePicker.delegate = self;
self.present(self.imagePicker, animated: true, completion: nil) }
alertController.addAction(OKAction)
let destroyAction = UIAlertAction(title: "Camera", style: .default) { action in
// print(action)
self.imagePicker.allowsEditing = false
self.imagePicker.sourceType = .camera
self.imagePicker.delegate = self;
self.present(self.imagePicker, animated: true, completion: nil)
}
alertController.addAction(destroyAction)
self.present(alertController, animated: true) {
// ...
}
}
override func viewDidLoad() {
super.viewDidLoad()
let backgroundImage = UIImageView(frame: UIScreen.main.bounds)
backgroundImage.image = UIImage(named: "background.jpg")
backgroundImage.contentMode = UIViewContentMode.scaleAspectFill
self.view.backgroundColor = UIColor.black
backgroundImage.alpha = 0.4
self.view.insertSubview(backgroundImage, at: 0)
imagePicker.delegate = self
backgroundButton.layer.cornerRadius = 15
}
//MARK: image picker delegate method
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
if let img = info[UIImagePickerControllerEditedImage] as? UIImage
{
self.image = img
}
else if let img = info[UIImagePickerControllerOriginalImage] as? UIImage
{
self.image = img
}
picker.dismiss(animated: true,completion: {self.performSegue(withIdentifier: "ImageLoaded",
sender: self)})
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "ImageLoaded" {
if let navController = segue.destination as? UINavigationController {
if let destinationController = navController.topViewController as? LandscapeDesignViewController {
destinationController.backgroundImageHolder.image = self.image
}
else {
print("inner failure")
}
}
else {
print("failed")
print(segue.destination)
}
}
}
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
dismiss(animated: true, completion: nil)
}
}
Upvotes: 0
Views: 468