谁能帮我解释一下这个错误- " 操作无法完成。(OSStatus错误-9807.) "。
我谷歌了&发现,除SkSMTPMessage
外,AVAudioPlayer
类有时会出现此错误,但数字不同,即9800。
我的问题是,A)你能告诉我,这里的数字有什么意义,B)为什么在代码中发生这种错误?
我找到了一个解决方案在这里-
似乎iOS 5+或更高版本和这个smtp应用程序有一些兼容性问题,因为iOS开始使用TLS 1.2。
在SKPSMTPMessage.m
中找到源代码,并像下面这样修改源代码,它工作
//CFDictionarySetValue(sslOptions, kCFStreamSSLLevel, kCFStreamSocketSecurityLevelTLSv1);
CFDictionarySetValue(sslOptions, kCFStreamSSLLevel, kCFStreamSocketSecurityLevelSSLv3);
在我的情况下不起作用。
在这种情况下,当我试图用我的gmail
帐户发送电子邮件时,它工作,但是当我试图从我的公司SMTP
凭据发送它时,它不起作用。
我如何从我的应用程序解决这样的问题?
可能是SSL证书问题。我遇到了同样的问题,事实证明,我的服务器正在使用自签名SSL证书,iOS有问题。
添加一行:
// Only do this for self-signed certs!
emailMessage.validateSSLChain = NO;