被APP Store拒绝后,如果是由于APP本身的原因导致崩溃,一般是无法告知你问题所在的,只会提供一个.Crash的错误日志,咋一看起来,日志内容是无法被人肉识别的,更别提分析错误了,这时候就需要对其进行符号化,具体过程如下:
1、登陆itunesconne,进入解决方案中心
2、下载.Crash日志文件
3、文件格式一般如下
#1、进程信息 Incident Identifier: 567E6F3B-80B8-471D-ABDA-1E302F98B40F CrashReporter Key: 1b046247bcda31f5730382cc9312215094f98bb9 Hardware Model: xxx Process: BoyingCaptial [411] Path: /private/var/mobile/Containers/Bundle/Application/FF0F7FE9-B922-451A-A79D-0F6A7FFEE61B/BoyingCaptial.app/BoyingCaptial Identifier: com.boying.BoyingCaptial Version: 1.3.5 (1.3.5) Code Type: ARM-64 (Native) Parent Process: launchd [1] #2、基本信息 Date/Time: 2015-08-17 10:55:34.164 -0700 Launch Time: 2015-08-17 10:55:30.884 -0700 OS Version: iOS 8.4.1 (12H321) Report Version: 105 #3、异常信息 Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Triggered by Thread: 0 #4、Crash调用堆栈 Last Exception Backtrace: (0x18205422c 0x193c240e4 0x18205416c 0x182e88824 0x182e8ee14 0x10009a788 0x100099498 0x1000310fc 0x1942a1994 0x1942a1954 0x1942a620c 0x18200b544 0x1820095ec 0x181f34f74 0x18b8676fc 0x186b36d94 0x1000d637c 0x1942cea08) #5、Crash线程回溯 Thread 0 name: Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 libsystem_kernel.dylib 0x00000001943e7270 0x1943cc000 + 111216 1 libsystem_pthread.dylib 0x000000019448515c 0x194480000 + 20828 2 libsystem_c.dylib 0x000000019435eb1c 0x1942fc000 + 404252 3 libsystem_c.dylib 0x000000019435eaa8 0x1942fc000 + 404136 4 libc++abi.dylib 0x00000001933f1414 0x1933f0000 + 5140 5 libc++abi.dylib 0x0000000193410b88 0x1933f0000 + 134024 6 libobjc.A.dylib 0x0000000193c243bc 0x193c1c000 + 33724 7 BoyingCaptial 0x000000010016e1bc 0x100004000 + 1483196 8 libc++abi.dylib 0x000000019340dbb0 0x1933f0000 + 121776 9 libc++abi.dylib 0x000000019340d474 0x1933f0000 + 119924 10 libobjc.A.dylib 0x0000000193c24200 0x193c1c000 + 33280 11 CoreFoundation 0x0000000182054168 0x181f2c000 + 1212776 12 Foundation 0x0000000182e88820 0x182e60000 + 165920 13 Foundation 0x0000000182e8ee10 0x182e60000 + 192016 14 BoyingCaptial 0x000000010009a784 0x100004000 + 616324 15 BoyingCaptial 0x0000000100099494 0x100004000 + 611476 16 BoyingCaptial 0x00000001000310f8 0x100004000 + 184568 17 libdispatch.dylib 0x00000001942a1990 0x1942a0000 + 6544 18 libdispatch.dylib 0x00000001942a1950 0x1942a0000 + 6480 19 libdispatch.dylib 0x00000001942a6208 0x1942a0000 + 25096 20 CoreFoundation 0x000000018200b540 0x181f2c000 + 914752 21 CoreFoundation 0x00000001820095e8 0x181f2c000 + 906728 22 CoreFoundation 0x0000000181f34f70 0x181f2c000 + 36720 23 GraphicsServices 0x000000018b8676f8 0x18b85c000 + 46840 24 UIKit 0x0000000186b36d90 0x186ac0000 + 486800 25 BoyingCaptial 0x00000001000d6378 0x100004000 + 861048 26 libdyld.dylib 0x00000001942cea04 0x1942cc000 + 10756 Thread 1 name: Dispatch queue: com.apple.libdispatch-manager Thread 1: 0 libsystem_kernel.dylib 0x00000001943ccc24 0x1943cc000 + 3108 1 libdispatch.dylib 0x00000001942b1e6c 0x1942a0000 + 73324 2 libdispatch.dylib 0x00000001942a3998 0x1942a0000 + 14744 #6、动态库信息 Binary Images: 0x100004000 – 0x1001d7fff BoyingCaptial arm64 <c54d1ff7a496377682b367e4367724e7> /var/mobile/Containers/Bundle/Application/FF0F7FE9-B922-451A-A79D-0F6A7FFEE61B/BoyingCaptial.app/BoyingCaptial 0x120048000 – 0x12006ffff dyld arm64 <dddc36a8e70636f7a9fea757477bf90b> /usr/lib/dyld 0x180a38000 – 0x180a38fff Accelerate arm64 <8e155c8b26b133a28f7578ef67aacc38> /System/Library/Frameworks/Accelerate.framework/Accelerate 0x180a3c000 – 0x180a4efff libCGInterfaces.dylib arm64 <bceab07321723c4ea6fa01e58e3ca63f> /System/Library/Frameworks/Accelerate.framework/Frameworks/vImage.framework/Libraries/libCGInterfaces.dylib</pre> |
4、进入XCode的Organizer工具
5、找出提交审核APP的对应Archive版本,并导出到本地
6、解压本地导出的ipa文件:
7、找出错误日志中的如下信息:
BinaryImage、Architectures:
Path:
8、命令行cd到解压出来的文件目录下,找到Payload下的.app文件,执行如下命令
atos -arch arm64 -o APPName.app/BoyingCaptial -l 0x100004000 0x000000010009a784 |
9、出错信息就会显示出来:
- 个人博客地址:http://www.china10s.com/blog/?p=120