提问人:Neph 提问时间:7/10/2019 更新时间:5/15/2022 访问量:2596
nw_dictionary_copy 使用 null 字典调用
nw_dictionary_copy called with null dictionary
问:
Swift 5、Xcode 10
Xcode 记录了一个奇怪的错误,只有在我做一些非常具体的事情时才会发生:
单击“登录”按钮后,我的应用程序连接到FTP服务器,但是如果没有Internet连接,则会显示一个包含两个选项的对话框:1.切换到离线模式,2.重试。如果我选择“重试”,将设备连接到互联网,然后再次点击“登录”按钮,则会抛出此错误。如果我切换到离线模式,或者在我点击“登录”按钮之前已经有互联网连接,则不会出现错误消息。
之后一切正常,但我仍然想摆脱它 - 如果可能的话:
2019-07-10 16:43:18.233414+0200 myapp[5256:111188] [] nw_dictionary_copy called with null dictionary
2019-07-10 16:43:18.235183+0200 myapp[5256:111188] [] __nwlog_err_simulate_crash simulate crash failed "nw_dictionary_copy called with null dictionary"
2019-07-10 16:43:18.237115+0200 myapp[5256:111188] [] nw_dictionary_copy called with null dictionary, dumping backtrace:
[x86_64] libnetcore-1229.250.15
0 libnetwork.dylib 0x000000010c35c3b8 __nw_create_backtrace_string + 120
1 libnetwork.dylib 0x000000010c2b74e3 nw_dictionary_copy + 643
2 libnetwork.dylib 0x000000010c2fffe8 __nw_path_watch_simulator_network_changes_block_invoke + 40
3 libsystem_notify.dylib 0x00000001090429b3 notify_register_mach_port + 7676
4 libdispatch.dylib 0x0000000108d82725 _dispatch_block_async_invoke2 + 83
5 libdispatch.dylib 0x0000000108d74db5 _dispatch_client_callout + 8
6 libdispatch.dylib 0x0000000108d7e792 _dispatch_workloop_invoke + 3251
7 libdispatch.dylib 0x0000000108d86ea3 _dispatch_workloop_worker_thread + 733
8 libsystem_pthread.dylib 0x000000010915d611 _pthread_wqthread + 421
9 libsystem_pthread.dylib 0x000000010915d3fd start_wqthread + 13
2019-07-10 16:43:18.241412+0200 myapp[5256:111188] [] nw_dictionary_apply called with null dictionary
2019-07-10 16:43:18.241561+0200 myapp[5256:111188] [] __nwlog_err_simulate_crash simulate crash failed "nw_dictionary_apply called with null dictionary"
2019-07-10 16:43:18.241923+0200 myapp[5256:111188] [] nw_dictionary_apply called with null dictionary, dumping backtrace:
[x86_64] libnetcore-1229.250.15
0 libnetwork.dylib 0x000000010c35c3b8 __nw_create_backtrace_string + 120
1 libnetwork.dylib 0x000000010c2b6bf9 nw_dictionary_apply + 249
2 libnetwork.dylib 0x000000010c300002 __nw_path_watch_simulator_network_changes_block_invoke + 66
3 libsystem_notify.dylib 0x00000001090429b3 notify_register_mach_port + 7676
4 libdispatch.dylib 0x0000000108d82725 _dispatch_block_async_invoke2 + 83
5 libdispatch.dylib 0x0000000108d74db5 _dispatch_client_callout + 8
6 libdispatch.dylib 0x0000000108d7e792 _dispatch_workloop_invoke + 3251
7 libdispatch.dylib 0x0000000108d86ea3 _dispatch_workloop_worker_thread + 733
8 libsystem_pthread.dylib 0x000000010915d611 _pthread_wqthread + 421
9 libsystem_pthread.dylib 0x000000010915d3fd start_wqthread + 13
我使用的唯一字典 (afaik) 是显示版本号,但即使没有这行代码,也会记录错误。我也在使用内置的JSON解析器(带有),但是这样的错误将被记录为自定义错误消息(这显然不是)。Bundle.main.infoDictionary?["CFBundleShortVersionString"]
Codable
此错误是什么意思,如何解决?
我知道您可以设置自动断点,将您指向导致错误的或多或少确切的代码行,但是我需要为此添加一个符号/条件吗?
答:
0赞
HOPCHAIN
5/15/2022
#1
只需清理旧的构建数据 从 Xcode 产品 --> clean build 文件夹
并重新构建 将有新的错误提示
评论
let reachability = Reachability()!
if reachability.connection != .none {....} else {...}