Android で MQTT を使用して、ActiveMQ サーバーと通信しています。この例を使用して、Android mqtt クライアントを実装しました: http://dalelane.co.uk/blog/?p=1599。最初に Android アプリを開くと、ActiveMQ に接続され、すべてが機能します。アプリケーションを閉じてアプリ データを削除し、Android を再度開いて ActiveMQ に再接続しようとすると、ActiveMQ で次のエラーが発生します。
2013-09-29 19:25:50,064 | WARN | Transport Connection to: tcp://192.168.0.108:54395 failed: java.io.EOFException | org.apache.activemq.broker.TransportConnection.Transport | ActiveMQ Transport: tcp:///192.168.0.108:54395@1883
2013-09-29 20:18:20,417 | WARN | Failed to add Connection ID:32132151513546-2:5, reason: javax.jms.InvalidClientIDException: Broker: localhost - Client: dbasdfasdfe0b already connected from tcp://192.168.0.108:59211 | org.apache.activemq.broker.TransportConnection | ActiveMQ Transport: tcp:///192.168.0.108:36745@1883
再接続を試みる前にサーバーから切断しないことに関係があると思います。未使用の接続を削除し、クライアントが切断されたと ActiveMQ が認識したときに、クライアントをすぐに切断するように ActiveMQ を構成できますか?