2016-07-28 4 views
1

私はチャットアプリケーションを開発中です。私は1対1のチャットをしました。それは私がグループチャットを作成するために、multiUserChat = new MultiUserChat(connection,room_name);を使用してグループのみんなの作成に関するいくつかの回答を見てきましたSmack 4.2.0-beta1グループチャット 'MultiUserChatの作成中にエラーが発生しました。パッケージ外からアクセスできない

'MultiUserChat(org.jivesoftware.smack.XMPPConnection, org.jxmpp.jid.EntityBareJid, org.jivesoftware.smackx.muc.MultiUserChatManager)' is not public in 'org.jivesoftware.smackx.muc.MultiUserChat'.  
Cannot be accessed from outside package 

以下のエラーが表示されますので、しかし、私は、グループチャットを作成することはできません。

4.2.0-beta1バージョンでは、このクラスにアクセスすることができません。

私は誰がどのように最新のピシャリ4.2.0-beta1のバージョンでグループを作成する方法を教えてもらえます

public void createGroupChat() { 
      // Create a MultiUserChat using a Connection for a room 
    // (room name as the second parameter) 
      try { 
       Resourcepart nikname = Resourcepart.from("admin"); 

       MultiUserChat mMultiUserChat = new MultiUserChat(connection, "[email protected]"); 
       mMultiUserChat.create(nikname); 
       Form form = mMultiUserChat.getConfigurationForm().createAnswerForm(); 
       form.setAnswer("muc#roomconfig_publicroom", true); 
       form.setAnswer("muc#roomconfig_roomname", "room"); 
       form.setAnswer("muc#roomconfig_roomowners", "owner"); 
       form.setAnswer("muc#roomconfig_persistentroom", true); 
       mMultiUserChat.sendConfigurationForm(form); 
      } catch (XmppStringprepException e) { 
       e.printStackTrace(); 
      } catch (MultiUserChatException.MucAlreadyJoinedException e) { 
       e.printStackTrace(); 
      } catch (InterruptedException e) { 
       e.printStackTrace(); 
      } catch (XMPPException.XMPPErrorException e) { 
       e.printStackTrace(); 
      } catch (MultiUserChatException.MissingMucCreationAcknowledgeException e) { 
       e.printStackTrace(); 
      } catch (NotConnectedException e) { 
       e.printStackTrace(); 
      } catch (SmackException.NoResponseException e) { 
       e.printStackTrace(); 
      } catch (MultiUserChatException.NotAMucServiceException e) { 
       e.printStackTrace(); 
      } 
     } 

の下に私のコードを追加していますか?

申し訳ありません。私はリンク

https://github.com/igniterealtime/Smack/blob/master/documentation/extensions/muc.md

以下、このからグループチャットを作成するための答えを見つけることが

答えて

0

また、私は私の新しいコードが追加されました。それはあなたが本当にここにマルチキャッチを使用している必要があり、他の開発者

public void createGroupChat() { 
     // Create a MultiUserChat using a Connection for a room 
// Get the MultiUserChatManager 
     MultiUserChatManager manager = MultiUserChatManager.getInstanceFor(connection); 
     try { 
      EntityBareJid jid = JidCreate.entityBareFrom("myroom" + "@" 
        + context.getString(R.string.serviceNameOld)); 

// Create a MultiUserChat using an XMPPConnection for a room 
      MultiUserChat muc = manager.getMultiUserChat(jid); 

// Prepare a list of owners of the new room 
      Set<Jid> owners = JidUtil.jidSetFrom(new String[]{"[email protected]", "[email protected]"}); 

// Create the room 
      Resourcepart nickname = Resourcepart.from("mathan"); 
      muc.create(nickname).getConfigFormManager().setRoomOwners(owners).submitConfigurationForm(); 

     } catch (XmppStringprepException e) { 
      e.printStackTrace(); 
     } catch (MultiUserChatException.MucAlreadyJoinedException e) { 
      e.printStackTrace(); 
     } catch (InterruptedException e) { 
      e.printStackTrace(); 
     } catch (XMPPException.XMPPErrorException e) { 
      e.printStackTrace(); 
     } catch (MultiUserChatException.MissingMucCreationAcknowledgeException e) { 
      e.printStackTrace(); 
     } catch (NotConnectedException e) { 
      e.printStackTrace(); 
     } catch (SmackException.NoResponseException e) { 
      e.printStackTrace(); 
     } catch (MultiUserChatException.NotAMucServiceException e) { 
      e.printStackTrace(); 
     } catch (MultiUserChatException.MucConfigurationNotSupportedException e) { 
      e.printStackTrace(); 
     } 
    } 
+1

のいくつかのために役立つことができます;) – Flow

+0

それは私に私が追加した理由ですキャッチを追加するために警告メッセージを表示します。 :(@Flow – MathaN

+0

私はあなたが例外をキャッチすべきではないことをここではマルチキャッチを使うべきだと書いています – Flow

関連する問題