Commit 0b036bf6e9bc25d6f3c5b78c83931398c5981bc4

Authored by 谷俊
2 parents dcb12a4f 67043045

Merge branch 'master' of bj.gitlab.cnlive.com:cnlive-team/CNLiveApp

app/src/main/java/com/cnlive/gundam/stream/ui/activity/StreamActivity.java
@@ -27,6 +27,7 @@ import com.cnlive.gundam.stream.model.ShowView; @@ -27,6 +27,7 @@ import com.cnlive.gundam.stream.model.ShowView;
27 import com.cnlive.gundam.stream.ui.adapter.SimpleAdapter; 27 import com.cnlive.gundam.stream.ui.adapter.SimpleAdapter;
28 import com.cnlive.gundam.stream.util.ChatConnect; 28 import com.cnlive.gundam.stream.util.ChatConnect;
29 import com.cnlive.gundam.stream.util.TimerUtil; 29 import com.cnlive.gundam.stream.util.TimerUtil;
  30 +import com.cnlive.gundam.video.model.CNMessageModle;
30 import com.cnlive.libs.stream.base.IStreamer; 31 import com.cnlive.libs.stream.base.IStreamer;
31 import com.cnlive.libs.stream.model.ActivityConfig; 32 import com.cnlive.libs.stream.model.ActivityConfig;
32 import com.cnlive.libs.stream.model.Filters; 33 import com.cnlive.libs.stream.model.Filters;
@@ -37,9 +38,6 @@ import com.cnlive.libs.util.chat.model.CNMessage; @@ -37,9 +38,6 @@ import com.cnlive.libs.util.chat.model.CNMessage;
37 import com.cnlive.libs.util.chat.model.CNUserInfo; 38 import com.cnlive.libs.util.chat.model.CNUserInfo;
38 import com.google.gson.Gson; 39 import com.google.gson.Gson;
39 40
40 -import org.json.JSONException;  
41 -import org.json.JSONObject;  
42 -  
43 import java.util.ArrayList; 41 import java.util.ArrayList;
44 import java.util.List; 42 import java.util.List;
45 43
@@ -104,7 +102,6 @@ public class StreamActivity extends BaseStreamActivity implements ChatConnect.Ch @@ -104,7 +102,6 @@ public class StreamActivity extends BaseStreamActivity implements ChatConnect.Ch
104 binding.setIsShow(showView); 102 binding.setIsShow(showView);
105 binding.chatRecyclerView.setLayoutManager(new LinearLayoutManager(this)); 103 binding.chatRecyclerView.setLayoutManager(new LinearLayoutManager(this));
106 chatItemList = new ArrayList<>(); 104 chatItemList = new ArrayList<>();
107 -  
108 timerUtil = new TimerUtil(this); 105 timerUtil = new TimerUtil(this);
109 } 106 }
110 107
@@ -118,7 +115,7 @@ public class StreamActivity extends BaseStreamActivity implements ChatConnect.Ch @@ -118,7 +115,7 @@ public class StreamActivity extends BaseStreamActivity implements ChatConnect.Ch
118 ExtensionModel extensionModel = new ExtensionModel(channelName, coverImgUrl); 115 ExtensionModel extensionModel = new ExtensionModel(channelName, coverImgUrl);
119 extensions = new Gson().toJson(extensionModel); 116 extensions = new Gson().toJson(extensionModel);
120 117
121 - roomId = activityId; 118 + roomId = channelId;
122 } 119 }
123 120
124 public void onClick(View view) { 121 public void onClick(View view) {
@@ -390,24 +387,29 @@ public class StreamActivity extends BaseStreamActivity implements ChatConnect.Ch @@ -390,24 +387,29 @@ public class StreamActivity extends BaseStreamActivity implements ChatConnect.Ch
390 @Override 387 @Override
391 public void onChatState(int what) { 388 public void onChatState(int what) {
392 389
  390 +
393 } 391 }
394 392
395 @Override 393 @Override
396 public void onChatMessage(CNMessage cnMessage) { 394 public void onChatMessage(CNMessage cnMessage) {
397 - //// TODO: 5/23/2017 Recyclerview添加数据  
398 - String headUrl = cnMessage.getUserInfo().getHeadUrl() == null ? "" : cnMessage.getUserInfo().getHeadUrl();  
399 - String userName = cnMessage.getUserInfo().getUserName() == null ? "" : cnMessage.getUserInfo().getUserName();  
400 - String content = null;  
401 try { 395 try {
402 - content = cnMessage.getContent() == null ? "" : (String) new JSONObject(cnMessage.getContent()).get("message");  
403 - } catch (JSONException e) { 396 + Gson gson = new Gson();
  397 + CNMessageModle cnMessageModle = gson.fromJson(cnMessage.getContent(), CNMessageModle.class);
  398 + String messagecontent = cnMessageModle.getMessage().getContent();
  399 + String messageType = cnMessageModle.getType();
  400 + if (messageType.equals("giftType")) {
  401 + chatItemList.add(new ChatItem(cnMessage.getUserInfo().getHeadUrl(), cnMessage.getUserInfo().getUserName(), "送了" + messagecontent));
  402 + } else if (messageType.equals("chatRoom")) {
  403 + chatItemList.add(new ChatItem(cnMessage.getUserInfo().getHeadUrl(), cnMessage.getUserInfo().getUserName(), messagecontent));
  404 +
  405 + } else if (messageType.equals("joinType")) {
  406 + chatItemList.add(new ChatItem(cnMessage.getUserInfo().getHeadUrl(), cnMessage.getUserInfo().getUserName(), "加入"));
  407 + }
  408 + } catch (Exception e) {
404 e.printStackTrace(); 409 e.printStackTrace();
405 } 410 }
406 - ChatItem chatItem = new ChatItem(headUrl, userName, content);  
407 - chatItemList.add(chatItem);  
408 chatAdapter = new SimpleAdapter(this, chatItemList, R.layout.item_chat, com.cnlive.gundam.BR.chat); 411 chatAdapter = new SimpleAdapter(this, chatItemList, R.layout.item_chat, com.cnlive.gundam.BR.chat);
409 binding.setChatAdapter(chatAdapter); 412 binding.setChatAdapter(chatAdapter);
410 -  
411 } 413 }
412 414
413 private void getOnlinePerson() { 415 private void getOnlinePerson() {
app/src/main/java/com/cnlive/gundam/video/fragment/PlayerLiveFragment.java
@@ -50,7 +50,8 @@ public class PlayerLiveFragment extends Fragment implements PlayerAccelerometerS @@ -50,7 +50,8 @@ public class PlayerLiveFragment extends Fragment implements PlayerAccelerometerS
50 @Override 50 @Override
51 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 51 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
52 binding = DataBindingUtil.inflate(inflater, R.layout.fragment_player_live, container, false); 52 binding = DataBindingUtil.inflate(inflater, R.layout.fragment_player_live, container, false);
53 - getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.contentLayout, ChatRoomFragment.newInstance(), "chatRoomFragment").commit(); 53 + program = (VideoListProgram) getArguments().getSerializable("program");
  54 + getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.contentLayout, ChatRoomFragment.newInstance(program.getChannelId()), "chatRoomFragment").commit();
54 return binding.getRoot(); 55 return binding.getRoot();
55 } 56 }
56 57
app/src/main/java/com/cnlive/gundam/video/fragment/PlayerUgcLiveFragment.java
@@ -16,7 +16,7 @@ import android.widget.Toast; @@ -16,7 +16,7 @@ import android.widget.Toast;
16 import com.cnlive.gundam.R; 16 import com.cnlive.gundam.R;
17 import com.cnlive.gundam.databinding.FragmentPlayerUgcLiveBinding; 17 import com.cnlive.gundam.databinding.FragmentPlayerUgcLiveBinding;
18 import com.cnlive.gundam.main.model.VideoListProgram; 18 import com.cnlive.gundam.main.model.VideoListProgram;
19 -import com.cnlive.gundam.video.fragment.chat.UgcLiveChatFragment; 19 +import com.cnlive.gundam.video.fragment.chat.ChatRoomFragment;
20 import com.cnlive.gundam.video.model.VideoModel; 20 import com.cnlive.gundam.video.model.VideoModel;
21 import com.cnlive.gundam.video.utils.PlayerUtils; 21 import com.cnlive.gundam.video.utils.PlayerUtils;
22 import com.cnlive.gundam.video.view.BaseVideoView; 22 import com.cnlive.gundam.video.view.BaseVideoView;
@@ -57,8 +57,8 @@ public class PlayerUgcLiveFragment extends Fragment implements BaseVideoView.OnU @@ -57,8 +57,8 @@ public class PlayerUgcLiveFragment extends Fragment implements BaseVideoView.OnU
57 @Override 57 @Override
58 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 58 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
59 binding = DataBindingUtil.inflate(inflater, R.layout.fragment_player_ugc_live, container, false); 59 binding = DataBindingUtil.inflate(inflater, R.layout.fragment_player_ugc_live, container, false);
60 - getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.contentLayout, UgcLiveChatFragment.newInstance(), "ugcLiveChatFragment").commit();  
61 initData(); 60 initData();
  61 + getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.contentLayout, ChatRoomFragment.newInstance(id), "chatRoomFragment").commit();
62 return binding.getRoot(); 62 return binding.getRoot();
63 } 63 }
64 64
app/src/main/java/com/cnlive/gundam/video/fragment/chat/ChatRoomFragment.java
@@ -8,7 +8,6 @@ import android.support.v4.app.Fragment; @@ -8,7 +8,6 @@ import android.support.v4.app.Fragment;
8 import android.support.v7.widget.GridLayoutManager; 8 import android.support.v7.widget.GridLayoutManager;
9 import android.support.v7.widget.OrientationHelper; 9 import android.support.v7.widget.OrientationHelper;
10 import android.support.v7.widget.SwitchCompat; 10 import android.support.v7.widget.SwitchCompat;
11 -import android.util.Log;  
12 import android.view.LayoutInflater; 11 import android.view.LayoutInflater;
13 import android.view.View; 12 import android.view.View;
14 import android.view.ViewGroup; 13 import android.view.ViewGroup;
@@ -48,14 +47,15 @@ public class ChatRoomFragment extends Fragment implements InputUtil.SendCallback @@ -48,14 +47,15 @@ public class ChatRoomFragment extends Fragment implements InputUtil.SendCallback
48 private FragmentChatBinding fragmentChatBinding; 47 private FragmentChatBinding fragmentChatBinding;
49 private ArrayList<GiftModle> giftArray; 48 private ArrayList<GiftModle> giftArray;
50 private CommonAdapter<MessageContent> messageContentCommonAdapter; 49 private CommonAdapter<MessageContent> messageContentCommonAdapter;
51 - private String roomId = "ChatRoom06";  
52 private MessageContentInfo messageContentInfo; 50 private MessageContentInfo messageContentInfo;
53 public SwitchCompat switchCompatBottom; 51 public SwitchCompat switchCompatBottom;
54 private BarrageLayout barrageLayout; 52 private BarrageLayout barrageLayout;
  53 + private String roomId;
55 54
56 55
57 - public static ChatRoomFragment newInstance() { 56 + public static ChatRoomFragment newInstance(String id ) {
58 Bundle args = new Bundle(); 57 Bundle args = new Bundle();
  58 + args.putString("roomID",id);
59 ChatRoomFragment fragment = new ChatRoomFragment(); 59 ChatRoomFragment fragment = new ChatRoomFragment();
60 fragment.setArguments(args); 60 fragment.setArguments(args);
61 return fragment; 61 return fragment;
@@ -66,6 +66,7 @@ public class ChatRoomFragment extends Fragment implements InputUtil.SendCallback @@ -66,6 +66,7 @@ public class ChatRoomFragment extends Fragment implements InputUtil.SendCallback
66 @Override 66 @Override
67 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 67 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
68 fragmentChatBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_chat, container, false); 68 fragmentChatBinding = DataBindingUtil.inflate(inflater, R.layout.fragment_chat, container, false);
  69 + roomId = getArguments().getString("roomID");
69 return fragmentChatBinding.getRoot(); 70 return fragmentChatBinding.getRoot();
70 71
71 } 72 }
@@ -140,7 +141,6 @@ public class ChatRoomFragment extends Fragment implements InputUtil.SendCallback @@ -140,7 +141,6 @@ public class ChatRoomFragment extends Fragment implements InputUtil.SendCallback
140 @Override 141 @Override
141 public void onDestroy() { 142 public void onDestroy() {
142 super.onDestroy(); 143 super.onDestroy();
143 - Log.v("fdfsfaf","dfasdfsafdfadf");  
144 ChatUtil.disconnect(false); 144 ChatUtil.disconnect(false);
145 } 145 }
146 146
app/src/main/java/com/cnlive/gundam/video/fragment/chat/MessageContentInfo.java
@@ -3,7 +3,6 @@ package com.cnlive.gundam.video.fragment.chat; @@ -3,7 +3,6 @@ package com.cnlive.gundam.video.fragment.chat;
3 import android.content.Context; 3 import android.content.Context;
4 import android.os.Handler; 4 import android.os.Handler;
5 import android.text.TextUtils; 5 import android.text.TextUtils;
6 -import android.util.Log;  
7 6
8 import com.cnlive.gundam.user.auth.UserService; 7 import com.cnlive.gundam.user.auth.UserService;
9 import com.cnlive.gundam.video.barrage.BarrageBaseMessage; 8 import com.cnlive.gundam.video.barrage.BarrageBaseMessage;
@@ -34,19 +33,19 @@ public class MessageContentInfo { @@ -34,19 +33,19 @@ public class MessageContentInfo {
34 private Context mContext; 33 private Context mContext;
35 private SendAndRecevieSucessCall mSendAndRecevieSucessCall; 34 private SendAndRecevieSucessCall mSendAndRecevieSucessCall;
36 private String roomId; 35 private String roomId;
37 - private BarrageLayout barrageLayout; 36 + private BarrageLayout barrageLayout;
38 private String JoinType = "joinType"; 37 private String JoinType = "joinType";
39 - private String ChatRoom ="chatRoom";  
40 - private String giftType = "giftType"; 38 + private String ChatRoom = "chatRoom";
  39 + private String giftType = "giftType";
41 40
42 41
43 - public void setOnReceiveAndSendListener(BarrageLayout barrageLayout,String roomID, Context context, SendAndRecevieSucessCall sendAndRecevieSucessCall) { 42 + public void setOnReceiveAndSendListener(BarrageLayout barrageLayout, String roomID, Context context, SendAndRecevieSucessCall sendAndRecevieSucessCall) {
44 this.roomId = roomID; 43 this.roomId = roomID;
45 this.mContext = context; 44 this.mContext = context;
46 this.mSendAndRecevieSucessCall = sendAndRecevieSucessCall; 45 this.mSendAndRecevieSucessCall = sendAndRecevieSucessCall;
47 mHandler = new Handler(); 46 mHandler = new Handler();
48 messageContentArrayList = new ArrayList<>(); 47 messageContentArrayList = new ArrayList<>();
49 - this.barrageLayout =barrageLayout; 48 + this.barrageLayout = barrageLayout;
50 initListener(); 49 initListener();
51 50
52 } 51 }
@@ -66,12 +65,9 @@ public class MessageContentInfo { @@ -66,12 +65,9 @@ public class MessageContentInfo {
66 65
67 Gson gson = new Gson(); 66 Gson gson = new Gson();
68 CNMessageModle cnMessageModle = gson.fromJson(message.getContent(), CNMessageModle.class); 67 CNMessageModle cnMessageModle = gson.fromJson(message.getContent(), CNMessageModle.class);
69 - String messagecontent =cnMessageModle.getMessage().getContent(); 68 + String messagecontent = cnMessageModle.getMessage().getContent();
70 String messageType = cnMessageModle.getType(); 69 String messageType = cnMessageModle.getType();
71 -  
72 -  
73 if (messageType.equals(giftType)) { 70 if (messageType.equals(giftType)) {
74 -  
75 barrageLayout.addMessage(new BarrageBaseMessage(message.getUserInfo().getUserName(), "送了" + messagecontent, "")); 71 barrageLayout.addMessage(new BarrageBaseMessage(message.getUserInfo().getUserName(), "送了" + messagecontent, ""));
76 messageContentArrayList.add(new MessageContent(message.getUserInfo().getUserName(), ": 送了" + messagecontent, message.getUserInfo().getHeadUrl(), true)); 72 messageContentArrayList.add(new MessageContent(message.getUserInfo().getUserName(), ": 送了" + messagecontent, message.getUserInfo().getHeadUrl(), true));
77 } else if (messageType.equals(ChatRoom)) { 73 } else if (messageType.equals(ChatRoom)) {
@@ -79,11 +75,9 @@ public class MessageContentInfo { @@ -79,11 +75,9 @@ public class MessageContentInfo {
79 messageContentArrayList.add(new MessageContent(message.getUserInfo().getUserName(), messagecontent + " :", message.getUserInfo().getHeadUrl(), false)); 75 messageContentArrayList.add(new MessageContent(message.getUserInfo().getUserName(), messagecontent + " :", message.getUserInfo().getHeadUrl(), false));
80 } else { 76 } else {
81 messageContentArrayList.add(new MessageContent(message.getUserInfo().getUserName(), " :" + messagecontent, message.getUserInfo().getHeadUrl(), true)); 77 messageContentArrayList.add(new MessageContent(message.getUserInfo().getUserName(), " :" + messagecontent, message.getUserInfo().getHeadUrl(), true));
82 -  
83 } 78 }
84 barrageLayout.addMessage(new BarrageBaseMessage(message.getUserInfo().getUserName(), messagecontent, "")); 79 barrageLayout.addMessage(new BarrageBaseMessage(message.getUserInfo().getUserName(), messagecontent, ""));
85 80
86 -  
87 } else if (messageType.equals(JoinType)) { 81 } else if (messageType.equals(JoinType)) {
88 String userName = message.getUserInfo().getUserName(); 82 String userName = message.getUserInfo().getUserName();
89 if (TextUtils.isEmpty(userName)) { 83 if (TextUtils.isEmpty(userName)) {
@@ -123,7 +117,7 @@ public class MessageContentInfo { @@ -123,7 +117,7 @@ public class MessageContentInfo {
123 117
124 Gson gson = new Gson(); 118 Gson gson = new Gson();
125 CNMessageModle cnMessageModle = gson.fromJson(message.getContent(), CNMessageModle.class); 119 CNMessageModle cnMessageModle = gson.fromJson(message.getContent(), CNMessageModle.class);
126 - String messagecontent =cnMessageModle.getMessage().getContent(); 120 + String messagecontent = cnMessageModle.getMessage().getContent();
127 String messageType = cnMessageModle.getType(); 121 String messageType = cnMessageModle.getType();
128 122
129 123
@@ -152,14 +146,13 @@ public class MessageContentInfo { @@ -152,14 +146,13 @@ public class MessageContentInfo {
152 onConnectListener = new IChat.OnConnectListener() { 146 onConnectListener = new IChat.OnConnectListener() {
153 @Override 147 @Override
154 public void onTokenIncorrect(String s) { 148 public void onTokenIncorrect(String s) {
155 -  
156 } 149 }
157 150
158 @Override 151 @Override
159 public void onSuccess(String s) { 152 public void onSuccess(String s) {
160 joinChatRoom(); 153 joinChatRoom();
161 154
162 - } 155 + }
163 156
164 157
165 @Override 158 @Override
@@ -175,10 +168,9 @@ public class MessageContentInfo { @@ -175,10 +168,9 @@ public class MessageContentInfo {
175 ChatUtil.joinChatRoom(roomId, 0, new IChat.OnOperationListener() { 168 ChatUtil.joinChatRoom(roomId, 0, new IChat.OnOperationListener() {
176 @Override 169 @Override
177 public void onSuccess(int what, String extra) { 170 public void onSuccess(int what, String extra) {
178 - CNMessageModle cnMessageModle = new CNMessageModle(JoinType,new MessageInfo("","","","",""));  
179 - Gson gson2=new Gson();  
180 - String obj2=gson2.toJson(cnMessageModle);  
181 - Log.v("dfsd",obj2); 171 + CNMessageModle cnMessageModle = new CNMessageModle(JoinType, new MessageInfo("", "", "", "", ""));
  172 + Gson gson2 = new Gson();
  173 + String obj2 = gson2.toJson(cnMessageModle);
182 ChatUtil.sendMessage(IChat.CHATROOM, roomId, obj2, onSendMessageListener); 174 ChatUtil.sendMessage(IChat.CHATROOM, roomId, obj2, onSendMessageListener);
183 } 175 }
184 176
@@ -196,5 +188,4 @@ public class MessageContentInfo { @@ -196,5 +188,4 @@ public class MessageContentInfo {
196 } 188 }
197 189
198 190
199 -  
200 } 191 }
app/src/main/java/com/cnlive/gundam/video/fragment/chat/UgcLiveChatFragment.java deleted 100644 → 0
1 -package com.cnlive.gundam.video.fragment.chat;  
2 -  
3 -import android.os.Bundle;  
4 -import android.support.annotation.Nullable;  
5 -import android.support.v7.widget.SwitchCompat;  
6 -import android.view.LayoutInflater;  
7 -import android.view.View;  
8 -import android.view.ViewGroup;  
9 -  
10 -import com.cnlive.gundam.R;  
11 -import com.cnlive.gundam.video.view.PlayerControllerView;  
12 -  
13 -/**  
14 - * @author 陈硕  
15 - * @time 2017/6/29 19:36  
16 - * @desc ${TODD}  
17 - */  
18 -public class UgcLiveChatFragment extends ChatRoomFragment {  
19 -  
20 - public static UgcLiveChatFragment newInstance() {  
21 - Bundle args = new Bundle();  
22 - UgcLiveChatFragment fragment = new UgcLiveChatFragment();  
23 - fragment.setArguments(args);  
24 - return fragment;  
25 - }  
26 -  
27 - @Nullable  
28 - @Override  
29 - public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {  
30 - return super.onCreateView(inflater, container, savedInstanceState);  
31 - }  
32 -  
33 -  
34 - @Override  
35 - public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {  
36 - super.onViewCreated(view, savedInstanceState);  
37 - PlayerControllerView viewById = getActivity().findViewById(R.id.controllerView);  
38 - viewById.setonswitchCompatChangeListene(new PlayerControllerView.SwitchCompatChangeListener() {  
39 - @Override  
40 - public void onSwitchCompatChange(SwitchCompat barrageTop) {  
41 - barrageTop.setVisibility(View.INVISIBLE);  
42 - }  
43 - });  
44 - }  
45 -}