Dropbox iOS SDK:WebKit丢弃了未捕获的exception
我正在使用Dropbox iOS SDK(截至本文撰写时, Cocoapod版本1.3.9 )。 我注意到一个奇怪的错误。 以下是重现它的步骤。
连接到Dropbox,成功登录并链接到我的帐户。
记录到控制台的URL(为安全而屏蔽的令牌):
db-abcdef123://1/connect?oauth_token=xyz123&oauth_token_secret=lmno123&uid=10884&state=91D8CB70-1037-4A4C-8F7B-CB8970E5E0BC
应用已成功链接!
退出,然后使用其他帐户登录…
URL再次登录到控制台,类似于前一个:
db-abcdef123://1/connect?oauth_token=def123&oauth_token_secret=jkl123&uid=95157647&state=DC716BF2-E033-4586-926C-5E733CEA1E3F
然后是错误:
*** WebKit discarded an uncaught exception in the webView:decidePolicyForNavigationAction:request:frame:decisionListener: delegate: The signature method "(null)" is not currently support by MPOAuthConnection [WARNING] DropboxSDK: error loading DBConnectController - Error Domain=NSURLErrorDomain Code=-1002 "unsupported URL" UserInfo=0x12848f00 {NSErrorFailingURLStringKey=db-abcdef123://1/connect?oauth_token=123abc&oauth_token_secret=xyz123&uid=95157647&state=DC716BF2-E033-4586-926C-5E733CEA1E3F, NSErrorFailingURLKey=db-abcdef123://1/connect?oauth_token=123abc&oauth_token_secret=xyz123&uid=95157647&state=DC716BF2-E033-4586-926C-5E733CEA1E3F, NSLocalizedDescription=unsupported URL, NSUnderlyingError=0x144c4c80 "unsupported URL"}
Dropbox登录屏幕保留在webView
,再次单击“ 登录”会导致相同的错误,但会导致应用程序崩溃。
有任何想法吗?
我正在使用Xcode 5和iOS 7
这是一个已知问题,将在iOS Dropbox应用程序的下一个版本(而不是SDK)中修复。
编辑 :我根据错误消息误诊了这个。 实际问题可能是,一旦初始化了DBRestClient
,它就会继续尝试在整个生命周期内使用相同的用户ID进行身份validation。 如果取消链接该用户(即使您已添加其他用户),它将无法validationAPI调用,因为它不再具有该用户的凭据。
修复是在切换到新用户时创建新的DBRestClient
。
此问题出现在DBRoulette示例应用程序中。 我们将尝试为下一个SDK版本提供修复程序。