目前使用HttpDNS服务时而有崩溃现象,崩溃日志为:
Application received signal SIGSEGV(null)
((0 CoreFoundation 0x000000018e746ff0 <redacted> + 148
1 libobjc.A.dylib 0x000000018d1a8538 objc_exception_throw + 56
2 CoreFoundation 0x000000018e746f20 <redacted> + 0
3 CustomerApp123 0x1009da438 _ZN21CConfirmIDCardCorners13CompareBottomERK7tagRECTS2_ + 1767112
4 libsystem_platform.dylib 0x000000018d80530c _sigtramp + 36
5 CFNetwork 0x000000018efa032c <redacted> + 304
6 CFNetwork 0x000000018ed6662c <redacted> + 128
7 CFNetwork 0x000000018ed4ff38 <redacted> + 180
8 CustomerApp123 0x1003f7b94 CustomerApp123 + 4160404
9 CustomerApp123 0x1003f78fc CustomerApp123 + 4159740
10 CustomerApp123 0x1003f5430 CustomerApp123 + 4150320
11 Foundation 0x000000018f215804 <redacted> + 16
12 Foundation 0x000000018f15a760 <redacted> + 96
13 Foundation 0x000000018f14ab18 <redacted> + 612
14 Foundation 0x000000018f217ba0 <redacted> + 228
15 libdispatch.dylib 0x000000018d5fe9a0 <redacted> + 16
16 libdispatch.dylib 0x000000018d60cad4 <redacted> + 928
17 libdispatch.dylib 0x000000018d6022cc <redacted> + 884
18 libdispatch.dylib 0x000000018d60ea50 <redacted> + 540
19 libdispatch.dylib 0x000000018d60e7d0 <redacted> + 124
20 libsystem_pthread.dylib 0x000000018d8071d0 _pthread_wqthread + 1096
21 libsystem_pthread.dylib 0x000000018d806d7c start_wqthread + 4
)
用DSYMTools定位到:
-[HttpdnsRequest sendHTTPSRequest:error:activatedServerIPIndex:] (in CustomerApp123) + 572
请问是否能看下可能出现的问题?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
根据您提供的崩溃日志和DSYMTools定位信息,问题似乎出在HttpdnsRequest sendHTTPSRequest:error:activatedServerIPIndex:
这个方法上。这表明您的应用在尝试通过HTTPDNS服务发送HTTPS请求时遇到了问题,并导致了崩溃。具体错误可能是由于多种原因造成的,以下是一些可能的故障点和解决思路:
内存管理问题:SIGSEGV信号通常与访问了无效的内存地址有关。检查CConfirmIDCardCorners::CompareBottom
方法(崩溃堆栈中的第3行),看是否有数组越界、野指针或未初始化变量的使用情况。
网络请求异常处理:确保sendHTTPSRequest:error:activatedServerIPIndex:
方法中对网络请求的错误处理逻辑是健壮的,包括但不限于超时、服务器无响应、证书验证失败等情况。
HTTPDNS配置与使用:
activatedServerIPIndex
)是否有效,确保它没有超出实际可用服务器列表的范围。线程安全问题:崩溃发生在多线程环境下,确保所有对共享资源的操作都是线程安全的,避免数据竞争和竞态条件。
系统库或依赖冲突:CFNetwork相关的崩溃提示可能意味着底层网络库的问题或者与系统的兼容性问题。确认您的应用及所依赖的第三方库与当前运行的iOS系统版本兼容。
资源限制:检查应用是否因打开的文件描述符过多、内存占用过高或其他系统资源限制而触发异常。
建议采取的行动步骤: - 仔细审查sendHTTPSRequest:error:activatedServerIPIndex:
方法的实现细节,特别是内存操作和网络请求处理部分。 - 更新HTTPDNS SDK到最新版本。 - 在调用该方法前后增加日志记录,以便更详细地追踪问题发生的具体上下文。 - 使用Xcode的内存分析工具(Instruments)检查是否存在内存泄漏或不当的内存访问。 - 如果问题持续存在,考虑联系阿里云技术支持提供更详细的日志和环境信息,以便获得针对性的帮助。