代码之家  ›  专栏  ›  技术社区  ›  stackOverFlew

ARKit应用在appstore review发布时崩溃,而不是在设备上

  •  0
  • stackOverFlew  · 技术社区  · 6 年前

    appstore审查团队告诉我,该应用在发布时崩溃。

    我相信应用程序在DidFinish发布时崩溃了:

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
        guard ARWorldTrackingConfiguration.isSupported else {
            fatalError("""
                ARKit is not available on this device. For apps that require ARKit
                for core functionality, use the `arkit` key in the key in the
                `UIRequiredDeviceCapabilities` section of the Info.plist to prevent
                the app from installing. (If the app can't be installed, this error
                can't be triggered in a production scenario.)
                In apps where AR is an additive feature, use `isSupported` to
                determine whether to show UI for launching AR experiences.
            """) // For details, see https://developer.apple.com/documentation/arkit
        }
    
        return true
    }
    

    然而,该应用程序只能安装在支持ARKit的设备上,因此我不确定苹果如何能够在iOS13设备上复制该应用程序,因为UIRequiredDeviceCapability中包含ARKit条目。普利斯特。他们是否可能在没有此功能的设备上运行应用程序?应用程序真的因为fatalerror呼叫而崩溃了吗?

    以下是我只能部分象征性地描述的一段文字:

    Date/Time:           2019-10-06 13:10:04.9570 -0700
    Launch Time:         2019-10-06 13:10:04.7508 -0700
    OS Version:          iPhone OS 13.1.2 (17A860)
    Release Type:        User
    Baseband Version:    9.00.01
    Report Version:      104
    
    Exception Type:  EXC_BREAKPOINT (SIGTRAP)
    Exception Codes: 0x0000000000000001, 0x00000001a62abefc
    Termination Signal: Trace/BPT trap: 5
    Termination Reason: Namespace SIGNAL, Code 0x5
    Terminating Process: exc handler [561]
    Triggered by Thread:  0
    
    Thread 0 name:  Dispatch queue: com.apple.main-thread
    Thread 0 Crashed:
    0   libswiftCore.dylib              0x00000001a62abefc 0x1a609e000 + 2154236
    1   libswiftCore.dylib              0x00000001a62abefc 0x1a609e000 + 2154236
    2   libswiftCore.dylib              0x00000001a60c764c 0x1a609e000 + 169548
    3   ARC2500A                        0x0000000100fcc6c8 @objc AppDelegate.application(_:didFinishLaunchingWithOptions:) + 83656 (AppDelegate.swift:0)
    4   UIKitCore                       0x000000019cf76ebc 0x19c590000 + 10383036
    5   UIKitCore                       0x000000019cf78c8c 0x19c590000 + 10390668
    6   UIKitCore                       0x000000019cf7e4c0 0x19c590000 + 10413248
    7   UIKitCore                       0x000000019c75a810 0x19c590000 + 1878032
    8   UIKitCore                       0x000000019cbeb3ec 0x19c590000 + 6665196
    9   UIKitCore                       0x000000019c75b2f8 0x19c590000 + 1880824
    10  UIKitCore                       0x000000019c75ae04 0x19c590000 + 1879556
    11  UIKitCore                       0x000000019c75b124 0x19c590000 + 1880356
    12  UIKitCore                       0x000000019c75a9e0 0x19c590000 + 1878496
    13  UIKitCore                       0x000000019c75eefc 0x19c590000 + 1896188
    14  UIKitCore                       0x000000019cb1e028 0x19c590000 + 5824552
    15  UIKitCore                       0x000000019cc045ac 0x19c590000 + 6768044
    16  UIKitCore                       0x000000019c75ec34 0x19c590000 + 1895476
    17  UIKitCore                       0x000000019cc044a8 0x19c590000 + 6767784
    18  UIKitCore                       0x000000019c75eaa0 0x19c590000 + 1895072
    19  UIKitCore                       0x000000019c5d3efc 0x19c590000 + 278268
    20  UIKitCore                       0x000000019c5d2a64 0x19c590000 + 272996
    21  UIKitCore                       0x000000019c5d3c34 0x19c590000 + 277556
    22  UIKitCore                       0x000000019cf7c840 0x19c590000 + 10405952
    23  UIKitCore                       0x000000019cb3ea0c 0x19c590000 + 5958156
    24  FrontBoardServices              0x000000019e00b994 0x19dfff000 + 51604
    25  FrontBoardServices              0x000000019e030960 0x19dfff000 + 203104
    26  FrontBoardServices              0x000000019e0160f8 0x19dfff000 + 94456
    27  FrontBoardServices              0x000000019e03061c 0x19dfff000 + 202268
    28  libdispatch.dylib               0x0000000198c40184 0x198be4000 + 377220
    29  libdispatch.dylib               0x0000000198be9038 0x198be4000 + 20536
    30  FrontBoardServices              0x000000019e055540 0x19dfff000 + 353600
    31  FrontBoardServices              0x000000019e05520c 0x19dfff000 + 352780
    32  FrontBoardServices              0x000000019e055734 0x19dfff000 + 354100
    33  CoreFoundation                  0x0000000198ef07e0 0x198e47000 + 694240
    34  CoreFoundation                  0x0000000198ef0738 0x198e47000 + 694072
    35  CoreFoundation                  0x0000000198eefed0 0x198e47000 + 691920
    36  CoreFoundation                  0x0000000198eeb01c 0x198e47000 + 671772
    37  CoreFoundation                  0x0000000198eea8bc 0x198e47000 + 669884
    38  GraphicsServices                0x00000001a2d56328 0x1a2d53000 + 13096
    39  UIKitCore                       0x000000019cf806d4 0x19c590000 + 10421972
    40  ARC2500A                        0x0000000100fc3010 main + 45072 (TableVC.swift:13)
    41  libdyld.dylib                   0x0000000198d75460 0x198d74000 + 5216
    
    Thread 1 name:  Dispatch queue: com.apple.root.background-qos
    Thread 1:
    0   libsystem_kernel.dylib          0x0000000198d6acb4 0x198d46000 + 150708
    1   libsystem_pthread.dylib         0x0000000198c88d8c 0x198c84000 + 19852
    2   libsystem_pthread.dylib         0x0000000198c88d5c 0x198c84000 + 19804
    3   CoreFoundation                  0x0000000198ecc2f4 0x198e47000 + 545524
    4   CoreFoundation                  0x0000000198ecb4dc 0x198e47000 + 541916
    5   libdispatch.dylib               0x0000000198c3f610 0x198be4000 + 374288
    6   libdispatch.dylib               0x0000000198c40184 0x198be4000 + 377220
    7   libdispatch.dylib               0x0000000198bf5104 0x198be4000 + 69892
    8   libdispatch.dylib               0x0000000198bf579c 0x198be4000 + 71580
    9   libsystem_pthread.dylib         0x0000000198c8ff64 0x198c84000 + 48996
    10  libsystem_pthread.dylib         0x0000000198c92ae0 0x198c84000 + 60128
    
    Thread 2:
    0   libsystem_pthread.dylib         0x0000000198c92ad8 0x198c84000 + 60120
    
    Thread 3:
    0   libsystem_pthread.dylib         0x0000000198c92ad8 0x198c84000 + 60120
    
    Thread 4:
    0   libsystem_pthread.dylib         0x0000000198c92ad8 0x198c84000 + 60120
    
    Thread 5 name:  com.apple.uikit.eventfetch-thread
    Thread 5:
    0   libsystem_kernel.dylib          0x0000000198d495f4 0x198d46000 + 13812
    1   libsystem_kernel.dylib          0x0000000198d48a60 0x198d46000 + 10848
    2   CoreFoundation                  0x0000000198ef0068 0x198e47000 + 692328
    3   CoreFoundation                  0x0000000198eeb188 0x198e47000 + 672136
    4   CoreFoundation                  0x0000000198eea8bc 0x198e47000 + 669884
    5   Foundation                      0x000000019922a994 0x199223000 + 31124
    6   Foundation                      0x000000019922a874 0x199223000 + 30836
    7   UIKitCore                       0x000000019d01849c 0x19c590000 + 11043996
    8   Foundation                      0x000000019935b0b0 0x199223000 + 1278128
    9   libsystem_pthread.dylib         0x0000000198c8f1ec 0x198c84000 + 45548
    10  libsystem_pthread.dylib         0x0000000198c92aec 0x198c84000 + 60140
    
    Thread 6:
    0   libsystem_pthread.dylib         0x0000000198c92ad8 0x198c84000 + 60120
    
    Thread 7:
    0   libsystem_pthread.dylib         0x0000000198c92ad8 0x198c84000 + 60120
    
    Thread 0 crashed with ARM Thread State (64-bit):
        x0: 0x8000000100fd0130   x1: 0x0000000000000407   x2: 0x0000000000000407   x3: 0x000000000000002b
        x4: 0x0000000107f05230   x5: 0x0000000000000026   x6: 0x0000000000000000   x7: 0x0000000000000c70
        x8: 0x0000000000000000   x9: 0x00000000000295b0  x10: 0x00000000000d29d0  x11: 0x0000000000179f41
       x12: 0x0000000107f04000  x13: 0x0000000000003fff  x14: 0x00000000b71ada31  x15: 0x000000000000080c
       x16: 0x0000000198c7e040  x17: 0x000000000000080c  x18: 0x0000000000000000  x19: 0x0000000100fd0142
       x20: 0x0000000000000002  x21: 0x0000000000000000  x22: 0x0000000000000014  x23: 0x0000000000000000
       x24: 0x8000000100fd0130  x25: 0x000000000000000b  x26: 0xd0000000000001cb  x27: 0x0000000000000051
       x28: 0x00000001dc5d1000   fp: 0x000000016ee455d0   lr: 0x00000001a62abefc
        sp: 0x000000016ee45550   pc: 0x00000001a62abefc cpsr: 0x60000000
       esr: 0xf2000001  Address size fault
    
    0 回复  |  直到 6 年前
        1
  •  0
  •   Suh Fangmbeng PaFi    6 年前

    以下是苹果公司的一条重要提示 docs 对于 isSupported 所有物

    讨论

    不同类型的AR体验(使用具体的 ArcConfiguration子类)可以有不同的硬件要求。

    在尝试创建AR配置之前,请验证 通过检查,用户的设备支持您计划使用的配置 相应配置类的isSupported属性。如果 此属性的值为false,当前设备不支持 请求的配置。

    重要的

    所有ARKit配置都需要配备A9或更高版本的iOS设备 加工机如果您的应用程序支持其他设备和服务 增强现实作为辅助功能,使用此属性 确定是否向用户提供基于AR的功能。

    如果应用程序的核心功能需要ARKit,请使用ARKit 输入应用程序的UIRequiredDeviceCapabilities部分 信息。plist使您的应用程序仅在支持 阿基特。

    总之,这意味着苹果商店使用的测试设备 不支持 ARWorldTrackingConfiguration 子类 ARConfiguration 。他们可能使用低于A9处理器的设备,或者使用早于11.0的iOS版本来测试应用程序。

    否则

    在信息中。普利斯特,确保你的 UIRequiredDeviceCapability ,你有 arkit 所有参赛作品都是小号的。