gpt4 book ai didi

iOS 应用程序仅在 TestFlight 构建时崩溃

转载 作者:行者123 更新时间:2023-11-30 12:24:26 33 4
gpt4 key购买 nike

我有一个 Swift 中的 ios 应用程序。该应用程序运行良好,并且从 xcode 本地上传时不会崩溃。但从 testflight 上传时该应用程序崩溃了。我发现代码没有任何问题。我已经在我的应用程序中实现了 Crashlytics,它给出了以下报告。

Crashed: com.apple.main-thread
EXC_BREAKPOINT 0x0000000100160fe4

Crashed: com.apple.main-thread
0 App 0x100160fe4 HomeViewController.viewDidLoad() -> () (HomeViewController.swift:57)

1 App 0x100161014 @objc HomeViewController.viewDidLoad() -> () (HomeViewController.swift)

2 UIKit 0x18c373ec0 -[UIViewController loadViewIfRequired] + 1036

3 UIKit 0x18c38b94c -[UIViewController __viewWillAppear:] + 132

4 UIKit 0x18c5101d4 -[UINavigationController _startCustomTransition:] + 1144

5 UIKit 0x18c42ab78 -[UINavigationController _startDeferredTransitionIfNeeded:] + 676

6 UIKit 0x18c42a7e0 -[UINavigationController __viewWillLayoutSubviews] + 64

7 UIKit 0x18c42a744 -[UILayoutContainerView layoutSubviews] + 188

8 UIKit 0x18c37107c -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1200

9 QuartzCore 0x189561274 -[CALayer layoutSublayers] + 148

10 QuartzCore 0x189555de8 CA::Layer::layout_if_needed(CA::Transaction*) + 292

11 QuartzCore 0x189555ca8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32

12 QuartzCore 0x1894d134c CA::Context::commit_transaction(CA::Transaction*) + 252

13 QuartzCore 0x1894f83ac CA::Transaction::commit() + 504
14 QuartzCore 0x1894f8e78 CA::Transaction::observer_callback(__CFRunLoopObserver*, unsigned long, void*) + 120

15 CoreFoundation 0x1861f09a8 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32

16 CoreFoundation 0x1861ee630 __CFRunLoopDoObservers + 372

17 CoreFoundation 0x1861eea7c __CFRunLoopRun + 956

18 CoreFoundation 0x18611eda4 CFRunLoopRunSpecific + 424

19 GraphicsServices 0x187b88074 GSEventRunModal + 100

20 UIKit 0x18c3d9058 UIApplicationMain + 208

21 App 0x1000d8688 main (NewProductData.swift:18)

22 libdyld.dylib 0x18512d59c start + 4

我不明白这份报告中的任何内容,如果有人知道请帮助我。

这里是viewDidload

  override func viewDidLoad() {
super.viewDidLoad()
Giving instance of HomeViewController to AppDelegate
let appDele = UIApplication.shared.delegate as! AppDelegate
appDele.homeVC = self
token = FIRInstanceID.instanceID().token()!
//Method to handle Firebase token
UserDefaults.standard.set(token, forKey: "Notificationtoken")
print("@@@@@@@@@@@@@@@@@@@@@@@ token provided is \(String(describing: token))")
let tokenstr = UserDefaults.standard.value(forKey: "Notificationtoken") as! String
if(token == tokenstr){
handleFCMToken(token: tokenstr)
}
else{
handleFCMToken(token: token!)

}

setUpNavBar()
setPopUpImage()
setUpcarousel()
setUpDelegates()
let help = Helper()

help.setUpGoogleAnalytics(screenName: "Home")

self.presenter = HomeViewPresenter(homeView: self)
presenter.getCarousel()
if(showProfile){
ProfileClicked()
}
// Do any additional setup after loading the view.
}

这是 viewWillAppear

 override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
setUpUI()


}

setupUI及方法

 func setUpUI(){
let wholesaler:Wholesaler = Helper.getWsProfile()

DispatchQueue.main.async {
self.wholesalerName.text = "Hello, \(wholesaler.wholesaler_name)"
self.pdsPoints.text = "\(wholesaler.pdsPoints!)"
self.visibilityPoints.text = "\(wholesaler.visibilityPoins!)"
}
iconNameString = ["SMS","Customer\n Groups","Visibility\n Contest","My\n Earnings","\(wholesaler.lastSchemeMonth!)\n Schemes","App\n News", "", "Contact\n Us"]

}

最佳答案

我认为查看 HomeViewController 的一些代码会给我们带来更多的见解。

但这里有一些评论:

  • 不确定完整的堆栈,但由于某种原因在 viewDidLoad 之前调用 viewWillAppear 似乎很奇怪。您是否在相应的方法上正确调用了 super
  • 您是否尝试过在 Release模式和 Debug模式下使用工具来分析应用程序?您可以在架构设置中对此进行管理。
  • 另一个提示是优化级别,但我认为它对于您的场景来说有点先进。转到您的目标设置并搜索优化级别,您会注意到它对于调试和发布是不同的。有时具有多个 block 和/或线程的复杂算法可能会受此影响。

首页有帮助

关于iOS 应用程序仅在 TestFlight 构建时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44369768/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com