我的应用程序有一个嵌入式框架,在同一个项目中创建,分析崩溃报告我注意到嵌入式框架的符号不起作用:
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libobjc.A.dylib 0x37ee868a objc_retain + 10
1 MyApp 0x000c4ae8 -[LoginManager startupNeedToDisplayOnBoarding] (LoginManager.m:26)
2 MyApp 0x000cd6e2 -[AppDelegate applicationDidBecomeActive:] (AppDelegate.m:65)
3 UIKit 0x2a715098 -[UIApplication _stopDeactivatingForReason:] + 1080
4 UIKit 0x2a92d594 -[UIApplication _runWithMainScene:transitionContext:completion:] + 2344
5 UIKit 0x2a940b54 __84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke3218 + 36
6 UIKit 0x2a92a7a6 -[UIApplication workspaceDidEndTransaction:] + 134
7 FrontBoardServices 0x2e78cca4 -[FBSSerialQueue _performNext] + 232
8 FrontBoardServices 0x2e78cf90 -[FBSSerialQueue _performNextFromRunLoopSource] + 44
9 CoreFoundation 0x2651c7c6 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 14
10 CoreFoundation 0x2651c3b6 __CFRunLoopDoSources0 + 454
11 CoreFoundation 0x2651a71e __CFRunLoopRun + 806
12 CoreFoundation 0x2646d0d8 CFRunLoopRunSpecific + 516
13 CoreFoundation 0x2646cecc CFRunLoopRunInMode + 108
14 UIKit 0x2a6fb606 -[UIApplication _run] + 526
15 UIKit 0x2a6f62dc UIApplicationMain + 144
16 Cinime 0x000af75e main (main.m:14)
17 libdyld.dylib 0x3861c872 start + 2
主应用程序没有问题:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIdentifier</key>
<string>com.apple.xcode.dsym.com.MyCompanyAAA.MyFramework</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>dSYM</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>0.1.0</string>
<key>CFBundleVersion</key>
<string>3</string>
</dict>
</plist>
问题显然在构建设置中,但是&#34;调试信息格式&#34;已经是&#34; DWARF与dSYM文件&#34;和所有其他debug-strip-dsym相关的设置与主应用程序相同。
即使是崩溃药也无法象征。
框架&#34; strip&#34;构造
这里有两个dSYM文件:
框架:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIdentifier</key>
<string>com.apple.xcode.dsym.com.MyCompanyBBB.MyApp</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>dSYM</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>2.0.0</string>
<key>CFBundleVersion</key>
<string>102</string>
</dict>
</plist>
应用:
for index in Timestaken:
Timestaken[index]="%.2f" % Timestaken[index]
注意CFBundleIdentifier:
框架: com.MyCompanyAAA.MyFramework
应用: com.MyCompanyBBB.MyApp
是的,公司使用两个不同的公司ID,这可能是个问题吗?
dSYM捆绑结构: