Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
android-m-live
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
yichen
android-m-live
Commits
814b47f7
Commit
814b47f7
authored
Feb 18, 2022
by
Dell
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1、加入禁言
2、加入开屏广告内容
parent
4b6c74ff
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
95 additions
and
32 deletions
+95
-32
Constants.kt
app/src/main/java/com/hupu/tv/player/app/app/Constants.kt
+4
-0
LiveActivity.kt
...n/java/com/hupu/tv/player/app/ui/activity/LiveActivity.kt
+3
-1
MainActivity.kt
...n/java/com/hupu/tv/player/app/ui/activity/MainActivity.kt
+10
-0
SplashActivityContact.kt
...om/hupu/tv/player/app/ui/contact/SplashActivityContact.kt
+2
-0
ChatFragment.java
...java/com/hupu/tv/player/app/ui/fragment/ChatFragment.java
+5
-1
CustomEaseChatFragment.java
...upu/tv/player/app/ui/fragment/CustomEaseChatFragment.java
+1
-0
LiveConversationFragment.kt
...upu/tv/player/app/ui/fragment/LiveConversationFragment.kt
+3
-1
SplashActivityPresenter.kt
...upu/tv/player/app/ui/presenter/SplashActivityPresenter.kt
+27
-12
DialogUtils.kt
...src/main/java/com/hupu/tv/player/app/utils/DialogUtils.kt
+11
-4
CustomEaseChatLayout.java
...a/com/hupu/tv/player/app/widget/CustomEaseChatLayout.java
+0
-0
CustomChatPrimaryMenu.java
...u/tv/player/app/widget/danmuku/CustomChatPrimaryMenu.java
+5
-13
ad_dialog.xml
app/src/main/res/layout/ad_dialog.xml
+24
-0
No files found.
app/src/main/java/com/hupu/tv/player/app/app/Constants.kt
View file @
814b47f7
...
...
@@ -416,6 +416,7 @@ object Constants {
const
val
FOLLOW_ORDER_TEXT
=
"预约"
const
val
BANNER_LIST
=
"banner_list"
const
val
MAIN_BANNER
=
"main_banner"
const
val
NEWS_HEAD_LIST
=
"news_head_list"
const
val
ROOM_ID
=
"room_id"
const
val
SPORT_ID
=
"sport_id"
...
...
@@ -432,6 +433,9 @@ object Constants {
const
val
USER_NICK
=
"user_nick"
const
val
LIVE_ROOM_USER_NAME
=
"live_room_user_name"
const
val
USER_LEVEL
=
"user_level"
const
val
MESSAGE_USER_ID
=
"user_id"
const
val
MESSAGE_USER_RID
=
"user_rid"
const
val
USER_HX_ID
=
"user_hx_id"
const
val
GIFT_BEAN
=
"gift_bean"
const
val
SPORT_TYPE
=
"sport_type"
...
...
app/src/main/java/com/hupu/tv/player/app/ui/activity/LiveActivity.kt
View file @
814b47f7
...
...
@@ -57,6 +57,7 @@ class LiveActivity : RefreshActivity<LiveActivityPresenter>(), LiveActivityConta
private
var
isDestory
=
false
private
var
isFollow
=
false
private
var
LiveRoomUserName
=
""
private
var
liveUserHxId
=
""
private
var
roomCover
=
""
private
var
matchId
=
""
override
fun
loadData
()
{
...
...
@@ -237,7 +238,7 @@ class LiveActivity : RefreshActivity<LiveActivityPresenter>(), LiveActivityConta
private
fun
initTabLayout
()
{
mFragment
.
add
(
LiveConversationFragment
.
newInstance
(
roomId
,
notice
,
LiveRoomUserName
))
mFragment
.
add
(
LiveConversationFragment
.
newInstance
(
roomId
,
notice
,
LiveRoomUserName
,
liveUserHxId
))
mFragment
.
add
(
LiveAnchorFragment
.
newInstance
(
roomId
))
mFragment
.
add
(
LiveRankFragment
.
newInstance
(
roomId
))
mFragment
.
add
(
LiveRedListFragment
.
newInstance
(
matchId
))
...
...
@@ -348,6 +349,7 @@ class LiveActivity : RefreshActivity<LiveActivityPresenter>(), LiveActivityConta
initPlayer
(
bean
?.
hotNum
.
toString
(),
bean
?.
roomName
?:
""
,
bean
?.
liveUrl
?:
""
)
}
LiveRoomUserName
=
bean
?.
userName
?:
""
liveUserHxId
=
bean
?.
huanXinUserId
.
orEmpty
()
initIm
(
bean
?.
huanXinUserId
?:
""
)
// initTabLayoutNoConversation()
}
...
...
app/src/main/java/com/hupu/tv/player/app/ui/activity/MainActivity.kt
View file @
814b47f7
...
...
@@ -26,6 +26,7 @@ import com.softgarden.baselibrary.utils.ToastUtil
import
com.hupu.tv.player.app.R
import
com.hupu.tv.player.app.app.Constants
import
com.hupu.tv.player.app.base.RefreshActivity
import
com.hupu.tv.player.app.bean.BannerBean
import
com.hupu.tv.player.app.bean.BoardBean
import
com.hupu.tv.player.app.bean.TabEntityBean
import
com.hupu.tv.player.app.event.ExitLoginEvent
...
...
@@ -33,6 +34,7 @@ import com.hupu.tv.player.app.ui.contact.MainActivityContact
import
com.hupu.tv.player.app.ui.fragment.*
import
com.hupu.tv.player.app.ui.presenter.MainActivityPresenter
import
com.hupu.tv.player.app.utils.DialogUtils
import
com.hupu.tv.player.app.utils.GlideUtils
import
kotlinx.android.synthetic.main.activity_main.*
import
me.jessyan.autosize.AutoSizeConfig
import
org.greenrobot.eventbus.EventBus
...
...
@@ -67,6 +69,7 @@ class MainActivity : RefreshActivity<MainActivityPresenter>(), MainActivityConta
setStatusColor
(
R
.
color
.
white
)
StatusBarUtil
.
setStatusBarLightMode
(
this
,
3
)
// isMineFragment(false)
showAdDialog
()
initTabLayout
()
DialogSettings
.
modalDialog
=
true
DialogSettings
.
init
()
...
...
@@ -75,6 +78,13 @@ class MainActivity : RefreshActivity<MainActivityPresenter>(), MainActivityConta
}
private
fun
showAdDialog
()
{
val
main
=
SPUtil
.
getSerializableObject
<
ArrayList
<
BannerBean
>>(
Constants
.
MAIN_BANNER
)
if
(
main
?.
isNotEmpty
()
==
true
)
{
DialogUtils
.
showAdDialog
(
this
)
}
}
private
fun
isMineFragment
(
isMineFragment
:
Boolean
)
{
val
top
=
if
(
isMineFragment
)
{
setStatusColor
(
R
.
color
.
transparent
)
...
...
app/src/main/java/com/hupu/tv/player/app/ui/contact/SplashActivityContact.kt
View file @
814b47f7
...
...
@@ -19,5 +19,6 @@ interface SplashActivityContact {
fun
getAvatarUrl
()
fun
getBannerList
()
}
}
\ No newline at end of file
app/src/main/java/com/hupu/tv/player/app/ui/fragment/ChatFragment.java
View file @
814b47f7
...
...
@@ -53,17 +53,19 @@ public class ChatFragment extends CustomEaseChatFragment implements OnRecallMess
private
Dialog
dialog
;
private
CustomChatPrimaryMenu
customChatPrimaryMenu
;
private
CustomChatRoomListener
customChatRoomListener
;
private
String
userHxId
=
""
;
@Override
public
void
initView
()
{
super
.
initView
();
userHxId
=
getArguments
().
getString
(
Constants
.
USER_HX_ID
,
""
);
liveUserName
=
getArguments
().
getString
(
Constants
.
LIVE_ROOM_USER_NAME
);
chatLayout
.
getChatMessageListLayout
().
setItemShowType
(
EaseChatMessageListLayout
.
ShowType
.
LEFT
);
customChatPrimaryMenu
=
new
CustomChatPrimaryMenu
(
getContext
());
chatLayout
.
getChatInputMenu
().
setCustomPrimaryMenu
(
customChatPrimaryMenu
);
clipboard
=
(
ClipboardManager
)
getActivity
().
getSystemService
(
Context
.
CLIPBOARD_SERVICE
);
LiveConversationFragment
parentFragment
=
(
LiveConversationFragment
)
getParentFragment
();
c
ustomChatPrimaryMenu
.
setOnSendMessageListener
(
message
->
parentFragment
.
sendDanmu
(
message
,
true
));
c
hatLayout
.
setOnSendMessageListener
(
message
->
parentFragment
.
sendDanmu
(
message
,
true
));
setShowChatPrimaryMenu
();
}
...
...
@@ -87,6 +89,8 @@ public class ChatFragment extends CustomEaseChatFragment implements OnRecallMess
LiveUserBean
liveUserBean
=
SPUtil
.
Companion
.
getSerializableObject
(
Constants
.
LIVE_USER_BEAN
);
if
(
liveUserBean
!=
null
)
{
message
.
setAttribute
(
Constants
.
USER_NICK
,
liveUserBean
.
getUserName
());
message
.
setAttribute
(
Constants
.
MESSAGE_USER_RID
,
liveUserBean
.
getId
());
message
.
setAttribute
(
Constants
.
MESSAGE_USER_ID
,
userHxId
);
message
.
setAttribute
(
Constants
.
USER_LEVEL
,
liveUserBean
.
getLevel
());
}
}
...
...
app/src/main/java/com/hupu/tv/player/app/ui/fragment/CustomEaseChatFragment.java
View file @
814b47f7
...
...
@@ -348,6 +348,7 @@ public class CustomEaseChatFragment extends EaseBaseFragment implements OnChatLa
}
@Override
public
boolean
onMenuItemClick
(
MenuItemBean
item
,
EMMessage
message
)
{
return
false
;
...
...
app/src/main/java/com/hupu/tv/player/app/ui/fragment/LiveConversationFragment.kt
View file @
814b47f7
...
...
@@ -37,9 +37,10 @@ class LiveConversationFragment : RefreshFragment<LiveConversationFragmentPresent
companion
object
{
@JvmStatic
fun
newInstance
(
conversationId
:
String
,
notice
:
String
,
userName
:
String
):
LiveConversationFragment
{
fun
newInstance
(
conversationId
:
String
,
notice
:
String
,
userName
:
String
,
userHxId
:
String
):
LiveConversationFragment
{
val
args
=
Bundle
()
args
.
putString
(
EaseConstant
.
EXTRA_CONVERSATION_ID
,
conversationId
)
args
.
putString
(
Constants
.
USER_HX_ID
,
userHxId
)
args
.
putInt
(
EaseConstant
.
EXTRA_CHAT_TYPE
,
EaseConstant
.
CHATTYPE_CHATROOM
)
args
.
putBoolean
(
EaseConstant
.
EXTRA_IS_ROAM
,
false
)
args
.
putString
(
Constants
.
LIVE_NOTICE
,
notice
)
...
...
@@ -99,6 +100,7 @@ class LiveConversationFragment : RefreshFragment<LiveConversationFragmentPresent
bundle
.
putInt
(
EaseConstant
.
EXTRA_CHAT_TYPE
,
EaseConstant
.
CHATTYPE_CHATROOM
)
bundle
.
putBoolean
(
EaseConstant
.
EXTRA_IS_ROAM
,
false
)
bundle
.
putString
(
Constants
.
LIVE_ROOM_USER_NAME
,
liveUserName
)
bundle
.
putString
(
Constants
.
USER_HX_ID
,
arguments
?.
getString
(
Constants
.
USER_HX_ID
))
chatFragment
=
ChatFragment
()
chatFragment
?.
arguments
=
bundle
childFragmentManager
.
beginTransaction
().
replace
(
R
.
id
.
fl_fragment
,
chatFragment
!!
,
"chat"
).
commit
()
...
...
app/src/main/java/com/hupu/tv/player/app/ui/presenter/SplashActivityPresenter.kt
View file @
814b47f7
...
...
@@ -43,11 +43,26 @@ class SplashActivityPresenter : IBasePresenter, SplashActivityContact.Presenter
override
fun
getAvatarUrl
()
{
RetrofitClient
.
retrofitService
.
getAvatarUrl
()
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
subscribe
(
object
:
RxCallback
<
String
>()
{
override
fun
onSuccess
(
data
:
String
?)
{
SPUtil
.
put
(
Constants
.
AVATAR_URL
,
data
)
SPUtil
.
put
(
Constants
.
AVATAR_URL
,
data
)
mTvMessage
?.
text
=
mTvMessage
?.
text
.
toString
()
+
"\n"
+
"请求头像成功:$data"
getMainBanner
()
}
})
}
private
fun
getMainBanner
()
{
RetrofitClient
.
retrofitService
.
getBannerList
(
JsonUtils
.
toRequestBody
(
hashMapOf
<
String
,
Any
>().
apply
{
put
(
"adType"
,
7
)
}))
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
subscribe
(
object
:
RxCallback
<
ArrayList
<
BannerBean
>>()
{
override
fun
onSuccess
(
data
:
ArrayList
<
BannerBean
>?)
{
SPUtil
.
putSerializableObject
(
Constants
.
MAIN_BANNER
,
data
)
mTvMessage
?.
text
=
mTvMessage
?.
text
.
toString
()
+
"\n"
+
"请求广告成功"
getBannerList
()
}
})
...
...
@@ -55,11 +70,11 @@ class SplashActivityPresenter : IBasePresenter, SplashActivityContact.Presenter
override
fun
getBannerList
()
{
RetrofitClient
.
retrofitService
.
getBannerList
(
JsonUtils
.
toRequestBody
(
hashMapOf
<
String
,
Any
>()))
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
getBannerList
(
JsonUtils
.
toRequestBody
(
hashMapOf
<
String
,
Any
>()))
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
subscribe
(
object
:
RxCallback
<
ArrayList
<
BannerBean
>>()
{
override
fun
onSuccess
(
data
:
ArrayList
<
BannerBean
>?)
{
SPUtil
.
putSerializableObject
(
Constants
.
BANNER_LIST
,
data
)
SPUtil
.
putSerializableObject
(
Constants
.
BANNER_LIST
,
data
)
mTvMessage
?.
text
=
mTvMessage
?.
text
.
toString
()
+
"\n"
+
"请求Banner成功"
getNewsList
()
}
...
...
@@ -68,26 +83,26 @@ class SplashActivityPresenter : IBasePresenter, SplashActivityContact.Presenter
private
fun
getNewsList
()
{
RetrofitClient
.
retrofitService
.
getNewsHeadList
(
JsonUtils
.
toRequestBody
(
hashMapOf
<
String
,
Any
>().
apply
{
put
(
"adType"
,
2
)
.
getNewsHeadList
(
JsonUtils
.
toRequestBody
(
hashMapOf
<
String
,
Any
>().
apply
{
put
(
"adType"
,
2
)
}))
.
compose
(
NetworkTransformer
(
mView
))
.
subscribe
(
object
:
RxCallback
<
List
<
BannerBean
>>()
{
override
fun
onSuccess
(
data
:
List
<
BannerBean
>?)
{
SPUtil
.
putSerializableObject
(
Constants
.
NEWS_HEAD_LIST
,
data
)
SPUtil
.
putSerializableObject
(
Constants
.
NEWS_HEAD_LIST
,
data
)
mTvMessage
?.
text
=
mTvMessage
?.
text
.
toString
()
+
"\n"
+
"请求HeadList成功"
getShareConfig
()
}
})
}
private
fun
getShareConfig
(){
private
fun
getShareConfig
()
{
RetrofitClient
.
retrofitService
.
getShareConfig
()
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
compose
(
NetworkTransformer
(
mView
,
false
))
.
subscribe
(
object
:
RxCallback
<
ShareBean
>()
{
override
fun
onSuccess
(
data
:
ShareBean
?)
{
SPUtil
.
putSerializableObject
(
Constants
.
COMMON_SHARE_BEAN
,
data
)
override
fun
onSuccess
(
data
:
ShareBean
?)
{
SPUtil
.
putSerializableObject
(
Constants
.
COMMON_SHARE_BEAN
,
data
)
mTvMessage
?.
text
=
mTvMessage
?.
text
.
toString
()
+
"\n"
+
"请求shareConfig成功"
mView
?.
onAvatarUrlRequest
()
}
...
...
app/src/main/java/com/hupu/tv/player/app/utils/DialogUtils.kt
View file @
814b47f7
...
...
@@ -23,10 +23,7 @@ import com.softgarden.baselibrary.utils.SPUtil
import
com.softgarden.baselibrary.utils.ToastUtil
import
com.hupu.tv.player.app.R
import
com.hupu.tv.player.app.app.Constants
import
com.hupu.tv.player.app.bean.GiftBean
import
com.hupu.tv.player.app.bean.LiveUserBean
import
com.hupu.tv.player.app.bean.MatchLiveBean
import
com.hupu.tv.player.app.bean.UserBean
import
com.hupu.tv.player.app.bean.*
import
com.hupu.tv.player.app.event.GiftEvent
import
com.hupu.tv.player.app.ui.activity.LoginActivity
import
com.hupu.tv.player.app.ui.adapter.GiftAdapter
...
...
@@ -61,6 +58,16 @@ object DialogUtils {
}
}
fun
showAdDialog
(
activity
:
AppCompatActivity
?){
CustomDialog
.
show
(
activity
,
R
.
layout
.
ad_dialog
)
{
dialog
:
CustomDialog
,
v
:
View
->
setView
(
dialog
)
val
main
=
SPUtil
.
getSerializableObject
<
ArrayList
<
BannerBean
>>(
Constants
.
MAIN_BANNER
)
if
(
main
?.
isNotEmpty
()
==
true
){
GlideUtils
.
loadImage
(
activity
,
main
[
0
].
picPath
,
v
.
findViewById
(
R
.
id
.
iv_img
))
}
}
}
fun
showGiftList
(
activity
:
AppCompatActivity
?)
{
val
list
=
SPUtil
.
getSerializableObject
<
ArrayList
<
GiftBean
>>(
Constants
.
GIFT_BEAN
)
if
(
list
!=
null
&&
list
.
size
!=
0
)
{
...
...
app/src/main/java/com/hupu/tv/player/app/widget/CustomEaseChatLayout.java
View file @
814b47f7
This diff is collapsed.
Click to expand it.
app/src/main/java/com/hupu/tv/player/app/widget/danmuku/CustomChatPrimaryMenu.java
View file @
814b47f7
...
...
@@ -49,7 +49,7 @@ public class CustomChatPrimaryMenu extends RelativeLayout implements IChatPrimar
private
ImageView
faceChecked
;
private
CheckBox
buttonMore
;
private
Button
buttonSend
;
private
OnSendMessageListener
sendMessageListener
;
private
EaseChatPrimaryMenuListener
listener
;
private
EaseInputMenuStyle
menuType
=
EaseInputMenuStyle
.
All
;
//菜单展示形式
...
...
@@ -72,9 +72,7 @@ public class CustomChatPrimaryMenu extends RelativeLayout implements IChatPrimar
initViews
();
}
public
void
setOnSendMessageListener
(
OnSendMessageListener
onSendMessageListener
)
{
sendMessageListener
=
onSendMessageListener
;
}
private
void
initViews
()
{
rlBottom
=
findViewById
(
R
.
id
.
rl_bottom
);
...
...
@@ -285,9 +283,7 @@ public class CustomChatPrimaryMenu extends RelativeLayout implements IChatPrimar
String
s
=
editText
.
getText
().
toString
();
editText
.
setText
(
""
);
listener
.
onSendBtnClicked
(
s
);
if
(
sendMessageListener
!=
null
)
{
sendMessageListener
.
send
(
s
);
}
}
}
else
if
(
id
==
R
.
id
.
btn_set_mode_voice
)
{
//切换到语音模式
// showVoiceStatus();
...
...
@@ -359,9 +355,7 @@ public class CustomChatPrimaryMenu extends RelativeLayout implements IChatPrimar
public
void
onClickKeyboardSendBtn
(
String
content
)
{
if
(
listener
!=
null
)
{
listener
.
onSendBtnClicked
(
content
);
if
(
sendMessageListener
!=
null
)
{
sendMessageListener
.
send
(
content
);
}
}
}
...
...
@@ -466,8 +460,6 @@ public class CustomChatPrimaryMenu extends RelativeLayout implements IChatPrimar
Log
.
e
(
"TAG"
,
this
.
getClass
().
getSimpleName
()
+
" afterTextChanged s:"
+
s
);
}
public
interface
OnSendMessageListener
{
void
send
(
String
message
);
}
}
app/src/main/res/layout/ad_dialog.xml
0 → 100644
View file @
814b47f7
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/shape_bg_dialog_white"
android:orientation=
"vertical"
>
<LinearLayout
android:layout_gravity=
"center"
android:layout_width=
"260dp"
android:layout_height=
"300dp"
android:orientation=
"vertical"
>
<ImageView
android:id=
"@+id/iv_img"
android:scaleType=
"centerCrop"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment