채팅을 위해 smack-android : 4.1.0을 사용하고 있습니다. 저는 openfire를 사용하고 있습니다. 내가 AccountManager와 안드로이드에 계정을 만들려고 할 때 지드 - 기형 나는 모든 것을 시도했지만 솔루션을 찾을 수 없다, 나는 사용자를 생성하기 위해 내 코드를 부르고있다.Android - XMPPError : jid-malformed - 수정
if(connection != null && connection.isConnected()){
Log.e("=AccountManager= ","AccountManager");
// Registering the user
AccountManager accountManager = AccountManager.getInstance(connection);
//Log.e("=supportsAccountCreation= ","="+accountManager.supportsAccountCreation());
//Log.e("=getAccountInstructions= ","="+accountManager.getAccountInstructions());
Map<String, String> attributes = new HashMap<>();
attributes.put("email", "[email protected]");
attributes.put("username", "spota421");
if (accountManager!=null&&accountManager.supportsAccountCreation()) {
accountManager.sensitiveOperationOverInsecureConnection(true);
accountManager.createAccount("spota421", "xxxxx", attributes);
}
}
이하 내 콘솔에 응답이 있습니다. 누군가가 나를 안내하고, 내가 뭘 잘못하고 있는지 알려주세요.
D/SMACK: SENT (0): <iq to='52.62.104.135:9090' id='4Clc6-3' type='get'><query xmlns='jabber:iq:register'></query></iq>
10-02 07:40:21.670 7216-7330/
D/SMACK: RECV (0): <iq type="error" id="4Clc6-3" to="ip-172-31-28-121.ap-southeast-2.compute.internal/8xk12y6kvq" from="52.62.104.135:9090"><query xmlns="jabber:iq:register"/><error code="400" type="modify"><jid-malformed xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></iq>
org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPPError: jid-malformed - modify
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at org.jivesoftware.smack.PacketCollector.nextResultOrThrow(PacketCollector.java:232)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at org.jivesoftware.smack.PacketCollector.nextResultOrThrow(PacketCollector.java:213)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at org.jivesoftware.smackx.iqregister.AccountManager.getRegistrationInfo(AccountManager.java:332)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at org.jivesoftware.smackx.iqregister.AccountManager.supportsAccountCreation(AccountManager.java:144)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at com.signity.spota.xmpp.CreateConnection.Authenticate(CreateConnection.java:182)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at com.signity.spota.xmpp.CreateConnection.access$200(CreateConnection.java:34)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at com.signity.spota.xmpp.CreateConnection$connect.onPostExecute(CreateConnection.java:121)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at com.signity.spota.xmpp.CreateConnection$connect.onPostExecute(CreateConnection.java:55)
10-02 07:40:21.675 7216-7216/com.signity.spota W/System.err: at android.os.AsyncTask.finish(AsyncTask.java:636)
이 XMPP Restful API를 사용하여 사용자를 만들 수 있습니다. 의사 선생님, 당신이 해결되기를 바랍니다. https://www.igniterealtime.org/projects/openfire/plugins/restapi/readme.html#create-a-user –
괜찮 았지만 위의 오류가 발생하는 이유를 알고 계십니까? – Achin
예,이 작업 솔루션은 나를 위해 – Achin