Android Smack 4.1.1 Dateiübertragung, FEHLER Socket konnte nicht hergestellt werden
Ich versuche, Dateien über meine Android-App mit der Smack Library 4.1.1 zu senden, obwohl ich einige Fehler dazu habe. Die Sache ist, dass ich nicht weiß, warum es nur die Dateien an ein Gerät sendet, aber danach kann ich sie nicht an andere senden und andere können sie auch nicht an andere senden, zum Beispiel als ich zum ersten Mal einen Listener geöffnet habe mit einem Gerät könnte und kann dieses Gerät Dateien nur an ein Gerät senden (das erste, das es gesendet hat), aber das, das empfängt, kann nicht, die Datei scheint anzukommen, aber mit 0 Daten oder vielleicht kommt sie nicht an und nur wann Kommt etwas an, verursacht Fehler Ich bin nicht sicher, aber nach einer Weile weiß ich nicht, ob die Verbindung oder etwas unterbrochen ist und ich kann Dateien mit jedem anderen Gerät senden, aber nicht mit einem anderen, nur mit einem. und die anderen bekommen diesen Fehler:
Ich teste es auch mit Funken und ich kann Dateien perfekt von Funken empfangen, obwohl, wenn ich eine Datei zum Funken sende, es Fehler auf Funken auch zeigt.
Logs
06-28 17:57:54.430 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='example.com' id='36V0P-179' type='get'><query xmlns='http://jabber.org/protocol/disco#items'></query></iq>
06-28 17:57:54.463 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq type="result" id="36V0P-179" from="example.com" to="[email protected]/Example"><query xmlns="http://jabber.org/protocol/disco#items"><item jid="pubsub.example.com" name="Publish-Subscribe service"/><item jid="proxy.example.com" name="Socks 5 Bytestreams Proxy"/><item jid="conference.example.com" name="Public Chatrooms"/></query></iq>
06-28 17:57:54.464 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='pubsub.example.com' id='36V0P-181' type='get'><query xmlns='http://jabber.org/protocol/disco#info'></query></iq>
06-28 17:57:54.485 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq type="result" id="36V0P-181" from="pubsub.example.com" to="[email protected]/Example"><query xmlns="http://jabber.org/protocol/disco#info"><identity category="pubsub" name="Publish-Subscribe service" type="service"/><feature var="http://jabber.org/protocol/pubsub"/><feature var="http://jabber.org/protocol/pubsub#access-open"/><feature var="http://jabber.org/protocol/pubsub#collections"/><feature var="http://jabber.org/protocol/pubsub#config-node"/><feature var="http://jabber.org/protocol/pubsub#create-and-configure"/><feature var="http://jabber.org/protocol/pubsub#create-nodes"/><feature var="http://jabber.org/protocol/pubsub#delete-nodes"/><feature var="http://jabber.org/protocol/pubsub#get-pending"/><feature var="http://jabber.org/protocol/pubsub#instant-nodes"/><feature var="http://jabber.org/protocol/pubsub#item-ids"/><feature var="http://jabber.org/protocol/pubsub#meta-data"/><feature var="http://jabber.org/protocol/pubsub#modify-affiliations"/><feature var="http://jabber.org/protocol/pubsub#manage-subscriptions"/><feature var="http://jabber.org/protocol/pubsub#multi-subscribe"/><feature var="http://jabber.org/protocol/pubsub#outcast-affiliation"/><feature var="http://jabber.org/protocol/pubsub#persistent-items"/><feature var="http://jabber.org/protocol/pubsub#presence-notifications"/><feature var="http://jabber.org/protocol/pubsub#publish"/><feature var="http://jabber.org/protocol/pubsub#publisher-affiliation"/><feature var="http://jabber.org/protocol/pubsub#purge-nodes"/><feature var="http://jabber.org/protocol/pubsub#retract-items"/><feature var="http://jabber.org/protocol/pubsub#retrieve-affiliations"/><feature var="http://jabber.org/protocol/pubsub#retrieve-default"/><feature var="http://jabber.org/protocol/pubsub#retrieve-items"/><feature var="http://jabber.org/protocol/pubsub#retrieve-subscriptions"/><feature var="http://jabber.org/protocol/pubsub#subscribe"/><feature var="http://jabber.org/protocol/pubsub#subscription-options"/><feature var="http://jabber.org/protocol/disco#info"/></query></iq>
06-28 17:57:54.486 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='proxy.example.com' id='36V0P-183' type='get'><query xmlns='http://jabber.org/protocol/disco#info'></query></iq>
06-28 17:57:54.501 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq type="result" id="36V0P-183" from="proxy.example.com" to="[email protected]/Example"><query xmlns="http://jabber.org/protocol/disco#info"><identity category="proxy" name="SOCKS5 Bytestreams Service" type="bytestreams"/><feature var="http://jabber.org/protocol/bytestreams"/><feature var="http://jabber.org/protocol/disco#info"/></query></iq>
06-28 17:57:54.502 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='conference.example.com' id='36V0P-185' type='get'><query xmlns='http://jabber.org/protocol/disco#info'></query></iq>
06-28 17:57:54.518 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq type="result" id="36V0P-185" from="conference.example.com" to="[email protected]/Example"><query xmlns="http://jabber.org/protocol/disco#info"><identity category="conference" name="Public Chatrooms" type="text"/><identity category="directory" name="Public Chatroom Search" type="chatroom"/><feature var="http://jabber.org/protocol/muc"/><feature var="http://jabber.org/protocol/disco#info"/><feature var="http://jabber.org/protocol/disco#items"/><feature var="jabber:iq:search"/><feature var="http://jabber.org/protocol/rsm"/></query></iq>
06-28 17:57:54.523 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='proxy.example.com' id='36V0P-187' type='get'><query xmlns='http://jabber.org/protocol/bytestreams'/></iq>
06-28 17:57:54.537 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq type="result" id="36V0P-187" from="proxy.example.com" to="[email protected]/Example"><query xmlns="http://jabber.org/protocol/bytestreams"><streamhost jid="proxy.example.com" host="198.105.244.228" port="7777"/></query></iq>
06-28 17:57:54.539 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='[email protected]/Example' id='36V0P-189' type='set'><query xmlns='http://jabber.org/protocol/bytestreams' sid='jsi_3989032673038256169' mode='tcp'><streamhost jid='[email protected]/Example' host='fe80::5054:ff:fe12:3456%eth0' port='7777'/><streamhost jid='[email protected]/Example' host='10.0.2.15' port='7777'/><streamhost jid='proxy.example.com' host='198.105.244.228' port='7777'/></query></iq>
06-28 17:57:59.564 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq type="get" id="843-84" from="example.com" to="[email protected]/Example"><ping xmlns="urn:xmpp:ping"/></iq>
06-28 17:57:59.566 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='example.com' id='843-84' type='result'></iq>
06-28 17:58:01.304 3394-3759/com.example.example D/SMACK﹕ RECV (0): <iq to="[email protected]/Example" id="36V0P-189" type="error" from="[email protected]/Example"><error type="cancel"><item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas" xml:lang="en">Could not establish socket with any provided host</text></error></iq>
06-28 17:58:01.308 3394-3758/com.example.example D/SMACK﹕ SENT (0): <iq to='[email protected]/Example' id='36V0P-193' type='set'><open xmlns='http://jabber.org/protocol/ibb' block-size='4096' sid='jsi_3989032673038256169' stanza='iq'/></iq>
it ist wirklich komisch, ich weiß nicht wirklich, was ich falsch mache. schau dir meinen Code an
DATEI SENDEN
public static void sendFile(String Username, String filePathAndName, AbstractXMPPConnection connection){
Log.e("FILENAMEing file", "to " + Environment.getExternalStorageDirectory() + File.separator + Example.DB_FOLDER + File.separator + "myText.jpg");
Log.e("FILENAMEing file", "to " + Username);
FileTransferManager manager = FileTransferManager.getInstanceFor(connection);
OutgoingFileTransfer transfer = manager.createOutgoingFileTransfer(Username + Example.DOMAIN + "/" + Example.APP_NAME);
try {
transfer.sendFile(new File(filePathAndName), "This is a Test!");
} catch (SmackException e) {
e.printStackTrace();
}
}
RECEIVING FILES:
public static void setFileTransferListener (AbstractXMPPConnection-Verbindung)
FileTransferManager manager = FileTransferManager.getInstanceFor(connection);
// Create the listener
manager.addFileTransferListener(new FileTransferListener() {
@Override
public void fileTransferRequest(FileTransferRequest request) {
IncomingFileTransfer transfer = request.accept();
try {
File file = new File(Environment.getExternalStorageDirectory() + File.separator + Example.DB_FOLDER + File.separator + "myFile22.jpg");
transfer.recieveFile(file);
} catch (SmackException | IOException e) {
e.printStackTrace();
}
}
});
}
Ich würde gerne eine Antwort oder einen Hinweis lesen. Ich stecke 2 Tage darin fest. D: Ich brauche wirklich Hilfe: /
Der Port wird natürlich weitergeleitet, wie ich sagte, er funktioniert mit einem Gerät oder dem ersten Gerät, das einen Listener zuerst öffnet, denke ich.