尝试使用Phonegap中的iOS应用上传照片时出现问题。错误是:
2012-02-16 19:06:17.523 ContactExplorer[851:207] File Transfer Error: Invalid server URL
2012-02-16 19:06:17.623 ContactExplorer[851:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary setObject:forKey:]: attempt to insert nil value (key: target)'
*** Call stack at first throw:
(
0 CoreFoundation 0x01dfb5a9 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x01f4f313 objc_exception_throw + 44
2 CoreFoundation 0x01db3ef8 +[NSException raise:format:arguments:] + 136
3 CoreFoundation 0x01db3e6a +[NSException raise:format:] + 58
4 CoreFoundation 0x01df9e15 -[__NSCFDictionary setObject:forKey:] + 293
5 ContactExplorer 0x00021990 -[PGFileTransfer createFileTransferError:AndSource:AndTarget:] + 153
6 ContactExplorer 0x00020c0b -[PGFileTransfer upload:withDict:] + 717
7 ContactExplorer 0x000157bf -[PhoneGapDelegate execute:] + 434
8 ContactExplorer 0x000029f0 -[AppDelegate execute:] + 80
9 ContactExplorer 0x000151e4 -[PhoneGapDelegate executeQueuedCommands] + 265
10 ContactExplorer 0x00015291 -[PhoneGapDelegate flushCommandQueue] + 81
11 ContactExplorer 0x00015600 -[PhoneGapDelegate webView:shouldStartLoadWithRequest:navigationType:] + 822
12 ContactExplorer 0x00002d3c -[AppDelegate webView:shouldStartLoadWithRequest:navigationType:] + 108
13 UIKit 0x00a93a92 -[UIWebView webView:decidePolicyForNavigationAction:request:frame:decisionListener:] + 291
14 CoreFoundation 0x01d6bc7d __invoking___ + 29
15 CoreFoundation 0x01d6bb51 -[NSInvocation invoke] + 145
16 CoreFoundation 0x01d99858 -[NSInvocation invokeWithTarget:] + 72
17 WebKit 0x0283cc76 -[_WebSafeForwarder forwardInvocation:] + 182
18 CoreFoundation 0x01d6ca04 ___forwarding___ + 1124
19 CoreFoundation 0x01d6c522 _CF_forwarding_prep_0 + 50
20 CoreFoundation 0x01d6bc7d __invoking___ + 29
21 CoreFoundation 0x01d6bb51 -[NSInvocation invoke] + 145
22 WebCore 0x03330150 _ZL20HandleDelegateSourcePv + 64
23 CoreFoundation 0x01ddc8ff __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
24 CoreFoundation 0x01d3a88b __CFRunLoopDoSources0 + 571
25 CoreFoundation 0x01d39d86 __CFRunLoopRun + 470
26 CoreFoundation 0x01d39840 CFRunLoopRunSpecific + 208
27 CoreFoundation 0x01d39761 CFRunLoopRunInMode + 97
28 GraphicsServices 0x023781c4 GSEventRunModal + 217
29 GraphicsServices 0x02378289 GSEventRun + 115
30 UIKit 0x0090ac93 UIApplicationMain + 1160
31 ContactExplorer 0x0000246f main + 127
32 ContactExplorer 0x000023e5 start + 53
33 ??? 0x00000001 0x0 + 1
)
terminate called after throwing an instance of 'NSException'
我用Google搜索了错误,但没有关键字:target。
的描述答案 0 :(得分:4)
阅读更多关闭:
[__ NSCFDictionary setObject:forKey:]:尝试插入nil值(键:目标)
您正在尝试将NIL设置为某个字典对象。我们无法使用错误日志在您的代码中找到此位置。
检查是否将所有参数正确设置为您正在使用的对象(您可以在堆栈跟踪中看到其中的几个)。其中一些可能发生了异常。
* 更新: 当我看到这些线条时:
5 ContactExplorer 0x00021990 -[PGFileTransfer createFileTransferError:AndSource:AndTarget:] + 153
6 ContactExplorer 0x00020c0b -[PGFileTransfer upload:withDict:] + 717
7 ContactExplorer 0x000157bf -[PhoneGapDelegate execute:] + 434
我可以建议,这个错误出现在PhoneGapDelegate中。它使用PGFileTransfer使用字典。然后崩溃。您提供的一些数据导致了这一点。问题还在于早期实现你的论点。
几行代码可以提供帮助。特别是PhoneGap的创建,委托和自定义回调。