首页 > 解决方案 > IOS 应用程序在审核时崩溃(异常类型:EXC_BREAKPOINT (SIGTRAP))

问题描述

我已提交我的应用程序以供审核,但我无法复制他们遇到的崩溃。反馈说“当我们在您的应用程序中导航时,您的应用程序在 WiFi 上运行 iOS 13.5.1 的 iPad 上间歇性崩溃。

我们附上了详细的崩溃日志,以帮助解决此问题。”

以下是崩溃日志:

Date/Time:           2020-06-12 17:27:32.8720 -0700
Launch Time:         2020-06-12 16:25:42.0646 -0700
OS Version:          iPhone OS 13.5.1 (17F80)
Release Type:        User
Baseband Version:    n/a
Report Version:      104

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x0000000100a476f8
Termination Signal: Trace/BPT trap: 5
Termination Reason: Namespace SIGNAL, Code 0x5
Terminating Process: exc handler [6054]
Triggered by Thread:  0

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   WayPoint                        0x0000000100a476f8 MapViewController.updateMap() + 63224 (MapViewController.swift:321)
1   WayPoint                        0x0000000100a47cb4 @objc MapViewController.searchBar(_:textDidChange:) + 64692 (<compiler-generated>:0)
2   UIKitCore                       0x00000001c1b91f30 0x1c1a24000 + 1498928
3   UIKitCore                       0x00000001c245378c 0x1c1a24000 + 10680204
4   UIKitCore                       0x00000001c1e63fc8 0x1c1a24000 + 4456392
5   UIKitCore                       0x00000001c1e64320 0x1c1a24000 + 4457248
6   UIKitCore                       0x00000001c2738534 0x1c1a24000 + 13714740
7   UIKitCore                       0x00000001c271df94 0x1c1a24000 + 13606804
8   UIKitCore                       0x00000001c274915c 0x1c1a24000 + 13783388
9   UIKitCore                       0x00000001c274b7d0 0x1c1a24000 + 13793232
10  UIKitCore                       0x00000001c274c2ac 0x1c1a24000 + 13796012
11  UIKitCore                       0x00000001c272166c 0x1c1a24000 + 13620844
12  UIKitCore                       0x00000001c273e594 0x1c1a24000 + 13739412
13  UIKitCore                       0x00000001c1b9acc8 0x1c1a24000 + 1535176
14  UIKitCore                       0x00000001c2277680 0x1c1a24000 + 8730240
15  UIKitCore                       0x00000001c22719d4 0x1c1a24000 + 8706516
16  UIKitCore                       0x00000001c2270600 0x1c1a24000 + 8701440
17  UIKitCore                       0x00000001c22a0568 0x1c1a24000 + 8897896
18  UIKitCore                       0x00000001c229ef9c 0x1c1a24000 + 8892316
19  Foundation                      0x00000001be795f78 0x1be65f000 + 1273720
20  CoreFoundation                  0x00000001be329c18 0x1be281000 + 691224
21  CoreFoundation                  0x00000001be329b70 0x1be281000 + 691056
22  CoreFoundation                  0x00000001be3292f8 0x1be281000 + 688888
23  CoreFoundation                  0x00000001be324328 0x1be281000 + 668456
24  CoreFoundation                  0x00000001be323ce8 0x1be281000 + 666856
25  GraphicsServices                0x00000001c846e38c 0x1c846b000 + 13196
26  UIKitCore                       0x00000001c2452444 0x1c1a24000 + 10675268
27  WayPoint                        0x0000000100a411d8 main + 37336 (ViewController.swift:14)
28  libdyld.dylib                   0x00000001be1ab8f0 0x1be1aa000 + 6384

Thread 1 name:  com.apple.uikit.eventfetch-thread
Thread 1:
0   libsystem_kernel.dylib          0x00000001be17f198 0x1be17b000 + 16792
1   libsystem_kernel.dylib          0x00000001be17e60c 0x1be17b000 + 13836
2   CoreFoundation                  0x00000001be329468 0x1be281000 + 689256
3   CoreFoundation                  0x00000001be32449c 0x1be281000 + 668828
4   CoreFoundation                  0x00000001be323ce8 0x1be281000 + 666856
5   Foundation                      0x00000001be66701c 0x1be65f000 + 32796
6   Foundation                      0x00000001be666efc 0x1be65f000 + 32508
7   UIKitCore                       0x00000001c24f55dc 0x1c1a24000 + 11343324
8   Foundation                      0x00000001be795e20 0x1be65f000 + 1273376
9   libsystem_pthread.dylib         0x00000001be0c1d98 0x1be0b7000 + 44440
10  libsystem_pthread.dylib         0x00000001be0c574c 0x1be0b7000 + 59212


Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000102089c00   x1: 0x00000001f809dc3c   x2: 0x0000000000000000   x3: 0x00000001be08cd84
    x4: 0x0000000282f92000   x5: 0x0000000000000010   x6: 0x000000000000005f   x7: 0x0000000000000000
    x8: 0x000000010148f000   x9: 0x00000001f809dc3c  x10: 0x0000000102931600  x11: 0x007f000102931600
   x12: 0x00000001029319c0  x13: 0x00000002095270c0  x14: 0x0000000000000000  x15: 0x000000000000004f
   x16: 0x00000002095270c0  x17: 0x00000001be29fd14  x18: 0x0000000000000000  x19: 0x00000000000003c8
   x20: 0x00000001019c7ca0  x21: 0x00000001fda87548  x22: 0x0000000102089c00  x23: 0x00000001fda87548
   x24: 0x40000001fda87548  x25: 0x0000000000000358  x26: 0x00000001f809f105  x27: 0x0000000101adefb0
   x28: 0x0000000280fc95f0   fp: 0x000000016f3c64a0   lr: 0x0000000100a47684
    sp: 0x000000016f3c6460   pc: 0x0000000100a476f8 cpsr: 0x60000000
   esr: 0xf2000001  Address size fault

Binary Images:
0x100a38000 - 0x10126ffff WayPoint arm64  <f1ced8645a553f72a9ab74ce2eef6f5a> /var/containers/Bundle/Application/08A1E8CF-27BC-48F7-9168-AEE9F1E80DE1/WayPoint.app/WayPoint
0x1015c8000 - 0x1015dbfff FBLPromises arm64  <2776fe10453430d2885b7e7a134a8194> /var/containers/Bundle/Application/08A1E8CF-27BC-48F7-9168-AEE9F1E80DE1/WayPoint.app/Frameworks/FBLPromises.framework/FBLPromises
0x101648000 - 0x101663fff GoogleUtilities arm64  <ac79608dd1a0396c8ae2ea36ab9a208b> /var/containers/Bundle/Application/08A1E8CF-27BC-48F7-9168-AEE9F1E80DE1/WayPoint.app/Frameworks/GoogleUtilities.framework/GoogleUtilities
0x101678000 - 0x101687fff PureLayout arm64  <30c5c49aa9b033c182690a26591a8a0c> /var/containers/Bundle/Application/08A1E8CF-27BC-48F7-9168-AEE9F1E80DE1/WayPoint.app/Frameworks/PureLayout.framework/PureLayout
0x101694000 - 0x10169ffff nanopb arm64  <cf0524b8df6e3443b29665991467bc84> /var/containers/Bundle/Application/08A1E8CF-27BC-48F7-9168-AEE9F1E80DE1/WayPoint.app/Frameworks/nanopb.framework/nanopb
0x10175c000 - 0x101767fff libobjc-trampolines.dylib arm64  <927690b4ce6e3dbb8d54d00bd46e211c> /usr/lib/libobjc-trampolines.dylib
0x101784000 - 0x1017e7fff dyld arm64  <c9d0dd090ebd3364b6b6d3baeb788dbf> /usr/lib/dyld
0x1bdf50000 - 0x1bdf66fff libsystem_trace.dylib arm64  <c70a923b37ad3f8a8e0873a3157620b1> /usr/lib/system/libsystem_trace.dylib
0x1bdf67000 - 0x1bdf98fff libxpc.dylib arm64  <d54676d1b91b309b8f35ed171eff1612> /usr/lib/system/libxpc.dylib

...

0x1f47f3000 - 0x1f482cfff CryptoTokenKit arm64  <372cbaac3f983cdaa76b4ef549ab6782> /System/Library/Frameworks/CryptoTokenKit.framework/CryptoTokenKit
0x1f482d000 - 0x1f4845fff ExposureNotification arm64  <8690d585e715374f81f32cb141ca5913> /System/Library/Frameworks/ExposureNotification.framework/ExposureNotification
0x1f506f000 - 0x1f508dfff AppSSO arm64  <eb1e0057fc123367a346cdce1045d087> /System/Library/PrivateFrameworks/AppSSO.framework/AppSSO
0x1f508e000 - 0x1f50a2fff AppSSOCore arm64  <f2c320f1a8bb334b80decfdad5091d02> /System/Library/PrivateFrameworks/AppSSOCore.framework/AppSSOCore
0x1f54ae000 - 0x1f54b8fff PointerUIServices arm64  <10ec5cd78b4232c798a290e3a51a4385> /System/Library/PrivateFrameworks/PointerUIServices.framework/PointerUIServices
0x1f54b9000 - 0x1f553dfff SafariSharedUI arm64  <44563ecd6ffc38dfb63fa4927ead6de4> /System/Library/PrivateFrameworks/SafariSharedUI.framework/SafariSharedUI

EOF

我认为这是 SceneDelegate 中的内存问题,或者是我推送到不同视图控制器的方式。任何人都可以看到这些功能有什么问题吗?

场景委托功能:


    func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        GMSPlacesClient.provideAPIKey("AIzaSyAJ97vEitxVOdTg9tcDCRIIqmLuN6KfN80")
        // Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`.
        // If using a storyboard, the `window` property will automatically be initialized and attached to the scene.
        // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).
        guard let windowScene = (scene as? UIWindowScene) else { return }
        window = UIWindow(frame: windowScene.coordinateSpace.bounds)
        window?.windowScene = windowScene
        let nav1 = UINavigationController()
        let mainView = ViewController(nibName: nil, bundle: nil) //ViewController = Name of your controller
        nav1.viewControllers = [mainView]
        self.window!.rootViewController = nav1
        window?.makeKeyAndVisible()
    }

ViewController 导航功能

    func buttonPressed() {
        if(button.isEnabled) {
            // On press - redirect to MapViewController and pass in the mean of latitude and longitude
            var sumLat = 0.0
            var sumLon = 0.0
            for spots in spotList {
                sumLat += spots.coordinate.latitude
                sumLon += spots.coordinate.longitude
            }
            let vc = MapViewController()
            vc.midLat = sumLat/Double(spotList.count)
            vc.midLon = sumLon/Double(spotList.count)
            self.navigationController?.pushViewController(vc, animated: true)
        }
    } 
        print(self.locations[indexPath.row])
        print(self.spotList[indexPath.row])
        let vc = DirectionsViewController()
        vc.spot = self.spotList[indexPath.row]
        self.navigationController?.pushViewController(vc, animated: true)

    }
func updateMap() {
        mapView.removeAnnotations(mapView.annotations)
        mapView.addAnnotation(spot)
        mapView.setCenter(spot.coordinate, animated: true)
}

标签: iosswiftiphoneapp-storeapp-store-connect

解决方案


推荐阅读