2016-11-18 73 views
0

createChannel方法在使用applozic sdk,android实现组聊天时返回null。Applozic sdk,无法以编程方式创建新组

 List<String> channelMembersList = new ArrayList<String>(); 
    channelMembersList.add(p.getMobile()); 
    channelMembersList.add("9567600846"); 
    channelMembersList.add("8089117582"); 

    final ChannelInfo channelInfo = new ChannelInfo("GroupName",channelMembersList); 
    channelInfo.setType(Channel.GroupType.PRIVATE.getValue().intValue()); 
    runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      channel = ChannelService.getInstance(WelcomeActivity.this).createChannel(channelInfo); 
     } 
    }); 

这里,通道对象总是空虽然ChannelInfo对象是created.Someone请你帮忙......

回答

1

你运行在UI线程此服务器调用方法,这就是为什么它给空始终。

runOnUiThread(新的Runnable(){你,如果你的更新用户界面的情况下只使用。

使用用于建立一组/通道此代码示例。

new Thread(new Runnable() { 
      @Override 
      public void run() { 
       List<String> channelMembersList = new ArrayList<String>(); 
       channelMembersList.add("9567600846"); 
       channelMembersList.add("8089117582"); 

       final ChannelInfo channelInfo = new ChannelInfo("GroupName", channelMembersList); 
       channelInfo.setType(Channel.GroupType.PRIVATE.getValue().intValue()); 
       Channel channel = ChannelService.getInstance(WelcomeActivity.this).createChannel(channelInfo); 
       Log.i("Channel","Channel respone is:"+channel); 
      } 
     }).start(); 
+1

是多数民众赞成它,事实上Asynctask为我做了诡计....谢谢 –

0

创建集团applozic

与特定组类型创建一个组

Channel.GroupType.PRIVATE.getValue()。的intValue()

公共组类型:Channel.GroupType.PUBLIC.getValue()的intValue()

型开放组:Channel.GroupType.OPEN.getValue()的intValue()

注:组元数据是可选的

为创建组,左侧组,从组中删除,组删除,组图标更改和组名称更改等消息设置组元数据数据。

注意:如果通道元数据设置为空字符串,则不会向组/通道中的其他用户发送通知。

ChannelMetadata channelMetadata = new ChannelMetadata(); 
channelMetadata.setCreateGroupMessage(ChannelMetadata.ADMIN_NAME + " created " + ChannelMetadata.GROUP_NAME); 
channelMetadata.setAddMemberMessage(ChannelMetadata.ADMIN_NAME + " added " + ChannelMetadata.USER_NAME); 
channelMetadata.setRemoveMemberMessage(ChannelMetadata.ADMIN_NAME + " removed " + ChannelMetadata.USER_NAME); 
channelMetadata.setGroupNameChangeMessage(ChannelMetadata.USER_NAME + " changed group name " + ChannelMetadata.GROUP_NAME); 
channelMetadata.setJoinMemberMessage(ChannelMetadata.USER_NAME + " joined"); 
channelMetadata.setGroupLeftMessage(ChannelMetadata.USER_NAME + " left group " + ChannelMetadata.GROUP_NAME); 
channelMetadata.setGroupIconChangeMessage(ChannelMetadata.USER_NAME + " changed icon"); 
channelMetadata.setDeletedGroupMessage(ChannelMetadata.ADMIN_NAME + " deleted group " + ChannelMetadata.GROUP_NAME); 

以下占位符将被替换

ChannelMetadata.ADMIN_NAME : admin name of the group 

ChannelMetadata.USER_NAME : user name of the user 

ChannelMetadata.GROUP_NAME : group name 

请检查文档此https://www.applozic.com/docs/android-chat-sdk.html