森栏
1 socks5 bytestreams 对应的协议是XEP-00652 In-Band Bytestreams(ibb) 对应的协议是XEP-0047socks5 Bytestreams方法的优点是效率高,但是跨网段传输时需要一个文件代理。像openfire服务器就自带有文件代理,所以这个容易实现。同网段传输可以直接连接,一般的实现是发起端建一个socks5服务。实际使用该方法时还需要使用XEP-0095协议来初始化流。XMPPFramework未包含XEP-0095这个协议的实现,需要自己定义。In-Band Bytestreams的优点是实现简单,但是效率不高。XMPPFramework也没有包含XEP-0047协议的实现。还有另一个更高级的方法 -- Jingle,相关的协议是XEP-0166。该方法是google发明并公布的。该方法目前还未普及,XMPPFramework也没有包含相应的实现,这是个很大的协议,实现起来应该很有难度。如果使用XMPPFramework进行开发,那么对于文件传输最容易实现的方法应该是sock5 Bytestreams。实现的时候主要就是认真看XEP-0095和XEP-0065这个两个协议文档