【问题标题】:SKProduct crash - only in store version of appSKProduct 崩溃 - 仅在应用程序的商店版本中
【发布时间】:2015-02-13 18:59:45
【问题描述】:

我有一个带有以下 SKProduct 代码的 swift 应用程序

func validateProductIdentifiers() {

        let identifiers:NSSet = NSSet(array: kProductIdentifiers)
        let productRequest = SKProductsRequest(productIdentifiers: identifiers)
        productRequest.delegate = self
        productRequest.start()
    }

    func productsRequest(request: SKProductsRequest!, didReceiveResponse response: SKProductsResponse!) {

        let product:SKProduct = response.products[0] as SKProduct

        homeView!.stopActivityAnimating()
        loadBulletBuy()
        bulletBuy!.loadBuyData(response)


    }

近一个月来,我一直在测试这个应用是我的设备,并且该应用在调用此方法期间从未失败/崩溃。

现在我的应用程序已经上线,我发现我的应用程序在上述方法中崩溃了。来自我的设备的崩溃日志

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   FrontLine                       0x000000010016654c @objc FrontLine.GameViewController.productsRequest (FrontLine.GameViewController)(ObjectiveC.SKProductsRequest!, didReceiveResponse : ObjectiveC.SKProductsResponse!) -> () (GameViewController.swift:0)
1   StoreKit                        0x0000000186638dac __34-[SKProductsRequest _handleReply:]_block_invoke + 540
2   libdispatch.dylib               0x0000000192cb53a8 _dispatch_call_block_and_release + 20
3   libdispatch.dylib               0x0000000192cb5368 _dispatch_client_callout + 12
4   libdispatch.dylib               0x0000000192cb997c _dispatch_main_queue_callback_4CF + 928
5   CoreFoundation                  0x0000000181eddfa0 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8
6   CoreFoundation                  0x0000000181edc048 __CFRunLoopRun + 1488
7   CoreFoundation                  0x0000000181e090a0 CFRunLoopRunSpecific + 392
8   GraphicsServices                0x000000018afa35a0 GSEventRunModal + 164
9   UIKit                           0x000000018673aaa0 UIApplicationMain + 1484
10  FrontLine                       0x0000000100189640 main (AppDelegate.swift:0)
11  libdyld.dylib                   0x0000000192cdea04 start + 0

我进行了一些搜索,发现这可能是由于解除了委托,在我的情况下是 VC。我现在正在尝试一种新的解决方案。

但我无法理解为什么该应用从未在我的测试运行中崩溃而仅在生产中崩溃。

我尝试安装我的开发版应用程序,该应用程序运行流畅,就好像我安装应用商店版本时它崩溃了一样。

任何关于如何防止此类故障的见解都会有所帮助

谢谢

【问题讨论】:

    标签: ios swift crash skproduct


    【解决方案1】:

    该问题在生产大约 3 小时后消失。看起来某些付款流程滞后于实际应用发布。

    【讨论】:

      猜你喜欢
      • 2015-09-21
      • 2013-07-13
      • 2017-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-12
      相关资源
      最近更新 更多