서버는 오픈파이어를 사용하고 있습니다
안드로이드 클라이언트간 메세지 전송 기능은 문제가 없는데 파일전송후 받는 부분이 문제가 있나봅니다
보내는 부분
File file = new File(filePath);
//manager = new FileTransferManager(con);
if(FileTransferNegotiator.isServiceEnabled(con)) {
OutgoingFileTransfer transfer = manager.createOutgoingFileTransfer(user+"/Smack");
try {
System.out.println(transfer.getProgress() + " is done! 1");
transfer.sendFile(file, file.getName());
System.out.println(transfer.getProgress() + " is done! 2");
while(!transfer.isDone()) {
Thread.sleep(1000);
}
} catch (Exception e) {
System.out.println("################ sendFile => 파일 전송 실패");
e.printStackTrace();
}
System.out.println("################ sendFile => 파일 전송 완료");
} else {
System.out.println("################ sendFile => 파일 전송 실패");
}
보내는 부분은 에러 없이 잘되는듯 합니다만
new ServiceDiscoveryManager(con); manager = new FileTransferManager(con); FileTransferNegotiator.setServiceEnabled(con, true); manager.addFileTransferListener(new FileTransferListener() { @Override public void fileTransferRequest(FileTransferRequest request) { Log.d("@@@@@@@@@@@@@@@@", "allows file..."); if (request != null) { // Accept it IncomingFileTransfer transfer = request.accept(); try { String path = "/sdcard/"+ request.getFileName(); transfer.recieveFile(new File(path)); } catch (XMPPException ex) { Log.d("", "er: " + ex); } } else { Log.d("", "reject file..."); request.reject(); } } }); 위처럼 파일 전송을 받는 부분이 전혀 동작을 하지 않습니다 XMPP를 이용한 파일전송 경험있으신분 답변 부탁 드립니다 우 리스너는 서비스에 있습니다 커넥션등이 서비스로 백그라운드에서 이뤄지고 있으며 메세지 전송도 서비스에서 감지되면 sendBroadcast 로 넘겨주는 방법으로 구성되어 있습니다...파일전송도 이런식으로 구성하려고 하는데 전혀 리스너에서 파일 전송된게 감지가 되지 않고 있습니다...