`
shendixiong
  • 浏览: 398687 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

smack发送和接收文件

阅读更多
		/** 
	     * 发送文件
	     * @param con 用户连接对象
	     * @param fullJID 用户jid  形式如:demo@serviceName/Spark 2.6.3 
	     * @param filePath 文件路径
	     */  
		public boolean sendFiles(XMPPConnection con,String fullJID,String filePath){
			File files=new File(filePath);
			FileTransferManager fileManager=new FileTransferManager(con);
			OutgoingFileTransfer sendfile=fileManager.createOutgoingFileTransfer(fullJID);
			try {
				sendfile.sendFile(files, "Sending file");
				return true;
			} catch (XMPPException e) {
				e.printStackTrace();
				return false;
			}
		}
		
		/** 
	     * 接收文件
	     * @param con 用户连接对象
	     * @param filePath 文件路径
	     */
		public void receiveFiles(XMPPConnection con,final String filePath){
			FileTransferManager fileManager=new FileTransferManager(con);
			fileManager.addFileTransferListener(new FileTransferListener() {
				@Override
				public void fileTransferRequest(FileTransferRequest prequest) {
					//System.out.println("The file received from: " + prequest.getRequestor());
					System.out.println("filePath:"+filePath+"||FileName:"+prequest.getFileName());
					file = new File(filePath +"\\" +prequest.getFileName());
					request = prequest;
					IncomingFileTransfer infiletransfer =request.accept();
					try {
						infiletransfer.recieveFile(file);
						System.out.println("接收成功!");
					} catch (XMPPException e) {
						e.printStackTrace();
					}
				}
			});
		}
		

 

分享到:
评论

相关推荐

    smack_接收文件实例

    在这个"smack_接收文件实例"中,我们将深入探讨如何利用Smack库在XMPP网络上接收文件。 首先,我们需要理解Smack库的基本结构。Smack提供了许多类和接口来处理XMPP连接、用户身份验证、消息发送与接收、以及文件...

    Android smack 接收 发送消息 表情发送

    Smack支持发送和接收扩展数据,如表情。首先,你需要定义一个XML格式的表情包,例如: ```xml <smack:x xmlns:smack="http://www.igniterealtime.org/xmpp/stanzas"> <smack:emotion type="happy"/> </smack:x> ```...

    smack发送消息

    标题“smack发送消息”指的是使用Smack库进行消息发送的操作。在Smack中,发送消息通常涉及到以下几个步骤: 1. **连接XMPP服务器**:首先,你需要创建一个`XMPPTCPConnection`实例,通过提供服务器地址、端口、...

    android手机间smack传输文件

    我们需要实例化这个管理器,以便后续的文件发送和接收。 4. 文件发送: - 创建`OutgoingFileTransfer`对象,指定接收方JID、文件路径和文件名。 - 调用`sendFile()`方法启动文件传输。在这个过程中,Smack会处理...

    smack_文件传给spark实例

    当我们需要在Spark实例之间或从Spark实例接收文件时,可能会涉及到Smack的文件传输功能。XMPP协议本身就支持文件传输,Smack库提供了相应的API,允许我们构建文件发送和接收的逻辑。在这个过程中,你需要创建一个...

    smack4.1.4 android 测试通过

    5. **发送和接收消息**:使用Smack发送消息可以通过`Message`类实现,接收消息则可以注册一个`PacketListener`或`PacketCollector`来监听服务器发来的消息。 6. **群组聊天**:Smack支持多用户聊天(MUC),开发者...

    基于xmpp_openfire_smack开发之smack类库介绍和使用

    例如,你可以创建聊天室,加入和离开聊天室,发送和接收文件,甚至可以实现自定义的业务逻辑,通过扩展 Smack 的数据包处理。 在实际开发中,通常还需要处理网络连接的异常情况,如断线重连、心跳保活和离线消息...

    smack android

    4. 发送和接收消息:使用Smack API发送和接收文本、文件等不同类型的消息。 5. 处理事件:注册监听器以响应用户上线、离线、收到消息等事件。 6. 关闭连接:当不再需要使用时,正确关闭连接以释放资源。 总之,...

    smack api帮助文档

    - **文件传输**:实现XMPP标准的文件发送和接收功能。 - **推送通知**:利用XMPP的推送服务,实现实时的消息推送。 - **扩展功能**:Smack API支持许多XMPP的扩展协议,如XEP(XMPP Extension Protocols),如Roster...

    smack4.1.5依赖jar包以及demo

    3. **消息处理**:通过Message类,Smack允许发送和接收文本、文件和其他类型的消息。你可以定制消息类型,如聊天消息、群组聊天、或者离线消息。 4. **会话管理**:Roster类用于管理联系人列表,包括添加、删除和...

    smack中文文档

    例如,你可以使用Smack建立连接、发送和接收消息、管理联系人列表、处理在线状态等。以下是一些主要的Smack类和接口: 1. `XMPPTCPConnection`:这是Smack连接服务器的主要类,通过它,你可以建立与XMPP服务器的...

    smack包.zip

    为了使用这些库,开发者需要在Android项目中添加对应的JAR文件,并根据Smack的API文档编写代码来建立连接、创建实体、发送和接收消息等。同时,由于Android系统的限制,可能还需要处理网络权限、后台服务持续运行等...

    smack_3_2_2.zip

    5. **文件传输**:提供了文件发送和接收的功能,增强了即时通讯的实用性。 6. **扩展消息和实体**:支持自定义XML元素和协议扩展,以适应各种业务需求。 7. **组件支持**:允许开发自定义的XMPP组件,扩展服务器功能...

    smack4.3.1

    通过简单的调用,可以创建用户、建立连接、发送和接收消息。 2. **连接管理**:Smack 支持多种连接模式,包括TCP连接、WebSocket连接,以及通过HTTP代理的连接。这确保了在各种网络环境下都能保持稳定通信。 3. **...

    Smack API中文版

    - **文件传输**:利用Smack的扩展机制,实现文件的发送和接收。 ### 4. 中文版优势 Smack API的中文版为国内开发者提供了更易理解和使用的文档,有助于快速掌握API的使用。这对于不熟悉英文文档或者对XMPP协议不太...

    Smack文档中文版

    5. **消息发送与接收**:Smack支持发送和接收不同类型的消息,包括普通文本、HTML格式、文件传输等。理解消息的生命周期和处理机制,能帮助我们构建高效的应用。 6. **多用户聊天(MUC)**:Smack还支持创建和参与...

    smack_4_1_3

    4. 发送和接收消息:通过`Message`对象发送文本、文件或其他类型的消息,并监听`PacketListener`或`AsyncPacketListener`来接收消息。 5. 处理在线状态:利用`Presence`对象管理用户的在线状态,如上线、离线、隐身...

    安卓xmpp通讯之smack4.1.9

    Smack的FileTransferManager和OutgoingFileTransfer类提供了文件发送的接口,而IncomingFileTransfer类则用于接收文件。 5. **事件监听**:为了实时响应用户操作或服务器事件,如新消息到达、好友上线等,Smack提供...

    smack4.0.3

    1. **API设计**:Smack提供了一套简洁易用的API,允许开发者通过创建连接、登录、发送和接收消息等方式与XMPP服务器交互。这个版本可能对API进行了一些调整和优化,以提高易用性和性能。 2. **连接管理**:Smack...

    smack 中文文档

    3. **消息处理**:支持发送和接收文本、HTML、文件和其他类型的消息,还支持群组聊天和私人消息。 4. **多用户聊天(MUC)**:实现了XMPP的多用户聊天室功能,允许多个用户参与同一聊天会话。 5. **Roster(联系人...

Global site tag (gtag.js) - Google Analytics