直播間重構(gòu)簡(jiǎn)析

一, 思維導(dǎo)圖分析


主框架.png

runtime 消息分發(fā).png

子模塊.png

二, 類的分析

Base

PXXRoomBaseModule

    基礎(chǔ)組件
    1.請(qǐng)求房間基本信息跃脊。設(shè)置最大重復(fù)請(qǐng)求次數(shù)
    2.配置 PXXLiveHouseLimitManager
    public:
    1.請(qǐng)求房間基本信息:loadData:rootview:
    (PXXLiveHouseLimitManager):房間限制管理:密碼限制钟鸵,
    是否有邀請(qǐng)碼等

Normal

PXXRoomContentModeNormal:PXXRoomContentMode

 直播間組件控制加載
 private 業(yè)務(wù)流程:
 1.設(shè)置直播間進(jìn)入信息 setRoomInfo:
 2.設(shè)置直播間裝載容器(鍵盤監(jiān)聽)setController:
 3.創(chuàng)建直播間邏輯功能 createRoomFunction:
 4.創(chuàng)建初始化模塊組件 loadRoomModules:
 5.加載內(nèi)容:moduleDidLoad     didLoad
 6. VC.videDidLoaded -> 創(chuàng)建Root容器:createRootContentView
     6.1 創(chuàng)建Root容器 -> 橫屏視圖 createLandscapeView
     6.2 創(chuàng)建Root容器 -> 豎屏視圖 createPortraitView
     6.3 創(chuàng)建Root容器 -> 根視圖 createRootLayout
     6.4 創(chuàng)建Root容器 -> 添加點(diǎn)擊事件 addTapGestureRecognizer
 7. VC.videDidLoaded -> 分發(fā)消息:createDefaultInterface
 8. VC.videDidLoaded -> 請(qǐng)求baseInfo :loadRoomData:
 9. VC.viewWillAppear -> 分發(fā)消息: viewWillAppear
 10.VC.viewDidAppear -> 分發(fā)消息: viewDidAppear
 11.VC.viewWillDisappear  -> 分發(fā)消息: viewWillDisappear
 12.VC.viewDidDisappear    -> 分發(fā)消息: viewDidDisappear
 13.VC.willRotateToInterfaceOrientation -> 分發(fā)消息
 14.VC.didRotateFromInterfaceOrientation -> 分發(fā)消息

Modules

Extension

PXXRoomModule (PXXRoomModuleSearchResult)

 PXXRoomModule Extension
 組件工廠:
 內(nèi)容簡(jiǎn)介    
 1.獲取其他功能和業(yè)務(wù)組件

PXXRoomNoticeModule

 直播間通知組件:直播間狀態(tài)改變通知
 private:
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_STEAMCUT:10 斷流-> onNoticeSteamCut
          :MESSAGE_TYPE_BANROOM:11  封禁 -> onNoticeBan
          :MESSAGE_TYPE_SEALUP:20      整改 -> onNoticeSealup
          :MESSAGE_TYPE_UNSEAL:21   接觸整改 -> onNoticeUnseal
          :MESSAGE_TYPE_LIGHT_REMIND:22 顯示輕度提醒 -> sendLightRemind
          :MESSAGE_TYPE_UN_LIGHT_REMIND:23 解除輕度提醒 -> removeLightRemind
 2.更改 PXXRoomStateContext.statetype
 3.更改 PXXRoomStateContext.errortype
 public:
 1.首充提示:onRechargeRemindState:(NSNotification *)notification
 2.支付完成:rechargeFinish;

PXXRoomUserModule

 直播間用戶信息組件:用戶權(quán)限變更综膀,信息變更理澎,主播開播提醒
 private:
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_GRANT:209 給用戶分配權(quán)限的通知 -> updateUserInfoWithDictionary
 2.長(zhǎng)鏈解析:MESSAGE_TYPE_REVOKE:210 解除用戶權(quán)限 -> updateUserInfoWithDictionary
 3.請(qǐng)求是否已經(jīng)關(guān)注了當(dāng)前主播 -> requestIsFollowed
 4.添加用戶信息變化通知 -> onAccountState -> 分發(fā):userLogin
                                      -> 分發(fā):userLogout

PXXRoomAnchorModule

 直播間主播信息組件:
 簡(jiǎn)介:直播間主播信息更改已慢,觀看人數(shù)。主播身高专执,主播經(jīng)驗(yàn)
 private
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_VIEWERS:207 觀看人數(shù)更新
 2.長(zhǎng)鏈解析:MESSAGE_TYPE_HEIGHT :208 主播身高更新
 3.長(zhǎng)鏈解析:MESSAGE_TYPE_UPDATE_ANCHORLEVEL_VALUE :212 主播經(jīng)驗(yàn)更新提示

PXXRoomSideBarModule

 直播間右邊欄組件:管理直播間內(nèi)活動(dòng)按鈕
 簡(jiǎn)介:統(tǒng)一管理直播間豎屏狀態(tài)下活動(dòng)按鈕,根據(jù)產(chǎn)品優(yōu)先級(jí)排列順序后室,并實(shí)現(xiàn)相關(guān)按鈕的點(diǎn)擊事件和效果。
 private
 1.按鈕:PXXRoomSideBar_PKButton 100                     //PK按鈕
 2.按鈕:PXXRoomSideBar_CompetitionButton 200            //競(jìng)技按鈕
 3.按鈕:PXXRoomSideBar_ManyLuckyButton   300            //多人挖寶
 4.按鈕:PXXRoomSideBar_LuckyButton       400            //普通抽獎(jiǎng)
 5.按鈕:PXXRoomSideBar_RechargeTask      450            //時(shí)效任務(wù)
 6.按鈕:PXXRoomSideBar_AccompanyPlayButton  500         //主播陪玩
 7.按鈕:PXXRoomSideBar_RewardButton      600            //新主播打賞

 對(duì)外使用接口
 1.根據(jù)優(yōu)先級(jí)創(chuàng)建按鈕 -> createSideButtonByPriority:action:
 2.車隊(duì)顯示更新邊欄組件 -> showCarTeamView:
 3.根據(jù)優(yōu)先級(jí)設(shè)置按鈕的顯示狀態(tài) -> updateButtonPriority:show:
 4.根據(jù)優(yōu)先級(jí)設(shè)置按鈕的選擇狀態(tài) -> updateButtonPriority:select:
 5.根據(jù)優(yōu)先級(jí)設(shè)置按鈕的文案 -> updateButtonPriority:title:
 6.根據(jù)優(yōu)先級(jí)設(shè)置按鈕的normalImg -> updateButtonPriority:normalImg:
 7.根據(jù)優(yōu)先級(jí)設(shè)置按鈕的hightImg -> updateButtonPriority:hightImg:
 8.根據(jù)優(yōu)先級(jí)設(shè)置按鈕的文案 -> updateButtonPriority:tagInteger:

ManyPeopleLuckyDraw

 多人挖寶組件:
 簡(jiǎn)介:豎屏觸發(fā)按鈕由PXXRoomSideBarModule管理
 public
 1.更新多人挖寶的信息 -> requestInfo
 2.清空多人挖寶的信息 -> clearData
 3.                -> configLuckyDrawInfo
 4.                -> addLuckyActionBlock
 5.                -> addClickLuckyActionBlock
 6.                -> addUpdateLuckyActionBlock
 7.                -> addHiddenLuckyViewActionBlock
 8.                -> addLuckySendGiftActionBlock
 9.                -> addLuckyToastActionBlock

PXXRechargeTaskModule

 用戶限時(shí)任務(wù)組件:
 簡(jiǎn)介:類型區(qū)分:英雄學(xué)院 限時(shí)好禮 金色禮包 渡劫飛升混狠,豎屏觸發(fā)按鈕由PXXRoomSideBarModule管理
 private:
 1.請(qǐng)求限時(shí)任務(wù)數(shù)據(jù):requestRechargeTaskInfo
 2.viewDidAppear           -> requestRechargeTaskInfoIfNeeded
 3.applicationBecomeActive -> requestRechargeTaskInfoIfNeeded
 public:
 1.PXXRoomRechargeTaskManager -> updateData: superview:
 2.添加TaskView容器視圖岸霹,設(shè)置TaskView的回調(diào)事件: setupControl:
 3.裝載TaskView視圖: setData:
 4.添加右邊欄時(shí)效任務(wù)按鈕: PXXRoomSideBar_RechargeTask
 5.更新右邊欄時(shí)效任務(wù)按鈕圖片: updateImgWithType
 6.當(dāng)天第一次展示充值任務(wù)面板: showTaskViewOrEntranceView

PXXAccompanyToPlayModule

 簡(jiǎn)介:
 1.陪玩豎屏觸發(fā)按鈕由PXXRoomSideBarModule管理
 2.陪玩視圖管理:PXXRoomAccompanyToPlayManager 
 private: 
 1.長(zhǎng)鏈數(shù)據(jù)解析:MESSAGE_TYPE_ACCOMPANYTOPLAY -> onAccompanyMessage
 2.請(qǐng)求當(dāng)前直播間的陪玩信息:showAccompanyToPlayViewNeeded
 3.添加右邊欄陪玩按鈕: showAccompanyToPlayViewNeeded
 4.顯示陪玩視圖容器: showAccompanyToPlayView

PXXRoomRegisterModule

 注冊(cè)引導(dǎo)組件:(已經(jīng)刪除) 

PXXRoomADModule

 廣告組件:展示直播間視頻廣告組件
 1.監(jiān)聽長(zhǎng)鏈數(shù)據(jù)解析:MESSAGE_TYPE_GOOGLE_DPF -> receiveGoogleAd
 2.設(shè)置ADModule -> setupADModule
 3.當(dāng)播放音頻時(shí), 禁用廣告:addVideoTypeChangeObserver
 4.ad橫豎屏UI,橫豎屏切換效果
 5.實(shí)現(xiàn)PXXADModuleCenterProtocol
 public:
 1.(void)videoRestart

PXXRoomCustomSkinModule

直播間皮膚組件:熊貓三周年皮膚
 1.下載直播間皮膚信息: downloadSkinImage
 2.更新直播間皮膚信息: updateSegmentView  直播間皮膚更改
                  : updateInputView    輸入框皮膚更改

PXXCarStationOptimizeModule

 車站功能組件:
 1.長(zhǎng)鏈解析: MESSAGE_TYPE_CARSTATION_GIFTPAG 粉絲禮包 -> receiveCarStationGiftPag
 1.長(zhǎng)鏈解析: MESSAGE_TYPE_CARSTATION_NOTIFICATION -> appendChatRoomMessage
 1.長(zhǎng)鏈解析: MESSAGE_TYPE_CARSTATION_BEFANS -> configGiftInfoWithMessage
 2.請(qǐng)求粉絲徽章信息 -> requestCarStationFansBagInfo
 3.顯示車站容器: showCarStationSendView
 內(nèi)容:
 1.PXXCarStationGiftSendView 車隊(duì)禮物發(fā)送 -> requestToOpenGiftPag 發(fā)送禮物
 2.PXXCarStationGiftSendView -> hideCarStationSendView
 3.PXXCarStationGiftReceiveView 車隊(duì)禮物接受 -> hideCarStationReceiveView

PXXRoomAnchorPKModule

 主播PK組件:
 對(duì)外功能:全屏彈出禮物視圖時(shí), 主播pk視圖如果存在, 就自動(dòng)上移 -> moveYProgressView:
 
 1.長(zhǎng)鏈解析: MESSAGE_TYPE_ANCHOR_PK_START_OR_FINISH -> onAnchorPKCreate
 1.長(zhǎng)鏈解析: MESSAGE_TYPE_ANCHOR_PK_SCORE_CHANGE -> onAnchorPKScoreChange
 1.長(zhǎng)鏈解析: MESSAGE_TYPE_ANCHOR_PK_RESULT_NOTIFICATION -> onAnchorPKNotify
 2.請(qǐng)求主播 pk 的信息 -> requestAnchorPkInfoIfNeeded
 3.橫豎屏UI展示切換 -> setAnchorPkViewFullScreenStatus:
 
 內(nèi)部邏輯
 1. requestAnchorPkInfoIfNeeded -> showAnchorPkView
 2. onAnchorPKCreate:type.integerValue == 1 -> receiveShowAnchorPkView
 2. onAnchorPKCreate:type.integerValue == 2 -> receiveStartAnchorPkPunishment
 2. onAnchorPKCreate:type.integerValue == 3 -> receiveAnchorPKWillRemove
 3. onAnchorPKScoreChange -> receiveUpdateAnchorPkScore
 4. onAnchorPKNotify -> receiveAnchorPKNotify

QunarRedPacketModule

 去哪紅包組件:
 對(duì)外功能: 顯示去哪網(wǎng)紅包 -> showQunarRedPacketView:

 1.videDidLoaded -> showQunarRedPacketViewIfNeeded
 2.QunarRedPacketViewMgr -> _redPacketViewClick 跳轉(zhuǎn)直播間

PXXTeamFlagModule

 戰(zhàn)隊(duì)隊(duì)旗組件:  
 1.長(zhǎng)鏈數(shù)據(jù)解析:MESSAGE_TYPE_CARTEAMFLAG_BUY -> configGiftInfoWithMessage

PXXBackgroundModule

 后臺(tái)播放管理組件:(冗余代碼比較多)
 1.添加監(jiān)聽-> applicationWillResignActive:,applicationDidBecomeActive:
 2.監(jiān)聽網(wǎng)絡(luò)-> networkStatusNotification:
 3.applicationWillResignActive -> canPlayBackground,endTaskTimer
 4.applicationDidBecomeActive -> alertPlayBackground,beginTaskTimer
 內(nèi)部邏輯
 1.canPlayBackground:同意后臺(tái)播放 -> NOTIFY_FlowPackag_EnterBackGround
 2.didLeaveRoom
 3.alertPlayBackground:設(shè)置后臺(tái)播放檀蹋,權(quán)限

PXXEnterRoomFunctionModule

 進(jìn)入直播間功能組件: 
 公用方法:
 1.隱藏提示用戶登錄:hideRemindLoginView
 2.顯示一血:showFirstBloodViewIfNeed
 內(nèi)部邏輯:
 1.提示用戶登錄:showRemindFollowView
 2.一血:buildFirstBloodModule 
 3.顯示一血:appendFirstBloodTimer -> ensureFromServerBeforeShow
 UI
 1.firstBloodView 一血視圖
 2.PXXRemindLoginView 登錄視圖

PXXLeaveRoomSubscribeModule

 直播間訂閱組件:
 公用方法
 1.退出直播間:leaveroom
 2.直播觀看時(shí)長(zhǎng)計(jì)時(shí):startTimer
 3.顯示訂閱提醒:showSubscribeToastIfNeeded
 4.隱藏訂閱提醒:hiddenSubscribeToastIfNeeded
 內(nèi)部邏輯:
 1.startTimer 開啟顯示訂閱提醒倒計(jì)時(shí):10分鐘
 2.LeaveRoomSubscribeView -> leaveRoomBlock,leaveRoomWithSubscribe
 3. leaveRoomWithSubscribe -> requestFollow

PXXNewAnchorRewardModule

 新主播打賞組件: 
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_UPDATE_NEW_ANCHOR_REWARD_INFO -> updateRoomInfoData
 內(nèi)容 PXXRoomRewardViewManager

PXXLivePKModule

 禮炮PK組件: 相關(guān)內(nèi)容 
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_PK_GAME_STATUS 
 ctype == 1 -> showPkGameBtnWithData, 
 ctype == 2 -> updatePkGameProgressWithData
 ctype == 3 -> updatePkGameProgressWithData
 ctype == 4 -> updatePkGameCardWithData
 2.applicationBecomeActive->requestAnchorPkInfoIfNeeded->showPkGameBtnWithData
 3.showPkGameBtnWithData:
 3.1 顯示PK按鈕松申,展示當(dāng)前主播PK狀態(tài)文案 -> showPkGameBtn:
 3.2 裝載橫屏PK視圖容器,載入數(shù)據(jù) -> portraitView.setData
 3.3 裝載豎屏PK視圖容器俯逾,載入數(shù)據(jù) -> pkGameFullscreenView.setData
 3.4 加載豎屏,橫屏PK視圖中提示文案 -> updateKillString:introString
 3.5 顯示禮炮PK按鈕
 4. updatePkGameProgressWithData:
 4.1 更新分?jǐn)?shù)展示信息:updateProgessScoreAndShowBtnState
 4.2 更新結(jié)果信息:_updateWinnerView
 容器功能:
 1.發(fā)送禮物
 2.PK結(jié)束抽獎(jiǎng)

PXXRoomLotteryModule

 普通抽獎(jiǎng)組件:
 公共方法:
 1.刷新粉絲徽章等級(jí) requestFansLevelIfNeeded
 相關(guān)內(nèi)容
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_LUCKYDRAW_START 
 1.1 LuckyDrawProgressPrepare -> chatDispatchLuckdrawStart
 1.2 LuckyDrawProgressUnstart -> chatDispatchLuckdrawStart
 1.3 PXXLuckyDrawManager -> updateLuckyDrawView
 2.長(zhǎng)鏈解析:MESSAGE_TYPE_LUCKYDRAW_END
 2.1 PXXLuckyDrawManager -> addLuckdrawParticipant:nickName:luckydrawId:
 3.長(zhǎng)鏈解析:MESSAGE_TYPE_UPDATE_MY_ROOM_FANS_LEVEL
 3.1 updateFansLevelAndActiveForLuckydraw
 4.請(qǐng)求抽獎(jiǎng) -> queryPlatformLuckyDraw
 容器內(nèi)容: PXXLuckyDrawManager

PXXUserInformationModule

 用戶信息組件:簡(jiǎn)介
 公共方法:
 1.顯示用戶信息:showUserInformationViewWith:
 2.隱藏用戶信息:hiddenUserInformationView
 3.獲取當(dāng)前最近的訪問(wèn)者:getCurrentRecentlyVisitor
 容器內(nèi)容:
 1.訪問(wèn)者管理:RecentlyVisitor
 2.PXXUserInformationModalView

PXXRoomAudioPlayModule

 控制蒙層和聲音播放組件: 網(wǎng)宿流量使用
 公共方法:
 1.顯示網(wǎng)絡(luò)提示彈框: showNetworkAlertView
 2.隱藏網(wǎng)絡(luò)提示彈框: hideNetWorkAlertView
 容器內(nèi)容:
 1.NonWifiLayerControlImplNew

PXXRoomRecommendModule

 直播間推薦模塊:
 公共方法:
 1.請(qǐng)求推薦數(shù)據(jù):loadRecommendData
 2.隱藏推薦view:hideRecommendView 
 3.推薦view是否顯示:isShowRecommendView
 內(nèi)容方法:
 1.addContextKVO -> updateRecommendViewState
 2.長(zhǎng)鏈解析:MESSAGE_TYPE_TURNCHANNEL -> receiveTurnChannel
 3.請(qǐng)求推薦信息:requestRecommendData
 容器:
 1.PXXLiveRecommendedView

PXXRoomFansBadgeModule

 粉絲徽章組件:
 公共方法:
 1.顯示贸桶,隱藏粉絲徽章視圖
 2.更改用戶佩戴的粉絲徽章
 3.更新粉絲徽章
 4.更新粉絲徽章等級(jí)
 內(nèi)容:
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_UPDATE_FANSBADGE:徽章等級(jí)升級(jí)
 容器:
 1.PXXNormalPortraitFansBadgeModel

PXXRoomHeroSkillsModule

 英雄體系組件 
 英雄體系技能豎屏UI,英雄技能使用方法
 英雄技能經(jīng)驗(yàn)豎屏UI
 英雄技能使用后數(shù)據(jù)解析:英雄禮包桌肴,禮物變化

PXXVoteModule

 投票組件
 內(nèi)容:
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_VOTE_START  -> 投票開始
 2.長(zhǎng)鏈解析:MESSAGE_TYPE_VOTE_END    -> 結(jié)束投票
 3.長(zhǎng)鏈解析:MESSAGE_TYPE_VOTE_UPDATE -> 投票更新
 容器:
 1.PXXVoteManager

PXXRoomPushControllerModule

 直播間跳轉(zhuǎn)管理組件
 實(shí)現(xiàn)直播間跳轉(zhuǎn)的其他直播間的功能統(tǒng)一管理

PXXShortVideoContributeMoudule

 高能時(shí)刻錄制組件 
 簡(jiǎn)介:
 1.直播間錄屏組件
 2.UI只在橫屏
 3.可錄制一定時(shí)長(zhǎng)的直播視頻
 公開方法:
 1.橫豎屏顯示:showShortVideoContributeViewWith

PXXRoomCarteamModule

 車隊(duì)組件
 1.長(zhǎng)鏈解析:MESSAGE_TYPE_UPDATE_LIVEROOM_CARTEAM_NUM_NEW -> receiveCarteamNumChange
 2.長(zhǎng)鏈解析:MESSAGE_TYPE_UPDATE_LIVEROOM_ACTION_NOFITY -> receiveUpdateLiveroomMyAttendingCarteam

PXXRoomTaskModule

 直播間竹子領(lǐng)取定時(shí)任務(wù)組件
 簡(jiǎn)介:
 1.用戶登入進(jìn)入直播間開啟竹子領(lǐng)取任務(wù)
 2.竹子領(lǐng)取相關(guān)UI只支持豎屏
 3.用戶退出直播間皇筛,當(dāng)前階段到計(jì)時(shí)停滯
 4.完成一個(gè)階段的竹子領(lǐng)取時(shí),領(lǐng)取按鈕有相關(guān)提示

PXXRoomCurrentGiftModule

 直播間禮物組件
 公共方法
 1.更新背包數(shù)據(jù)
 2.更新禮物數(shù)據(jù)
 3.更新戳主播數(shù)據(jù)
 4.發(fā)送背包禮物
 5.發(fā)送禮物(竹子和禮物)
 6.發(fā)送竹子
 7.發(fā)送禮物 

PXXGuessCompetitonModule

 直播間競(jìng)猜組件
 公共方法:
 1.顯示豎屏的競(jìng)猜View
 2.顯示橫屏的競(jìng)猜View

PXXRoomLuckyDrawModule

 直播間寶箱掉落組件
 公共方法:
 1.創(chuàng)建禮物掉落寶箱
 2.創(chuàng)建紅包掉落寶箱
 3.禮物寶箱數(shù)據(jù)解析

MainModule

PXXRoomVideoModule

 視頻播放組件 
 簡(jiǎn)介:直播間播放控制組件坠七,提供直播播放的控制方法

PXXRoomMessageModule

 長(zhǎng)鏈消息分發(fā)組件
 簡(jiǎn)介:長(zhǎng)鏈消息管理組件水醋。

PXXRoomBannerModule

 橫幅組件
 公共方法:
 1.根據(jù)指定平臺(tái)禮物信息展示橫幅:showBannerWithPlatGiftMessage
 2.獲取禮物動(dòng)畫管理者:updateGiftAnimationViewLevel
 
 簡(jiǎn)介:解析長(zhǎng)鏈,根據(jù)不同的長(zhǎng)鏈類型解析不同的橫幅禮物

PXXRoomEnterSpecialModule

 進(jìn)場(chǎng)特效組件
 public:
 1.添加當(dāng)前用戶進(jìn)場(chǎng)特效 appendCurrentUserEnterSpecial
 2.配置進(jìn)場(chǎng)特效是否被屏蔽 configEnterSpecialIsShield

PXXRoomBarrageSettingModule

 彈幕管理組件

PXXRoomWorldBarrageModule

 世界彈幕組件
 public
 1.添加世界彈幕:appendWorldBarrageWithModel
 2.世界彈幕是否被屏蔽:worldInfoIsShield

PXXRoomChatModule

 普通彈幕組件
 public:
 1.添加禮物聊天信息:appendGiftChatMessage
 2.添加聊天信息:appendChatMessage(在聊天室與全屏彈幕中添加聊天信息)
 3.添加聊天信息:appendRoomChatMessage(在聊天室中添加聊天信息)
 4.發(fā)送聊天信息:sendChatMessage

PXXRoomPayBarrageModule

 高能彈幕組件
 public:
 1.高能彈幕豎屏視圖:getPayBarrageView
 2.高能彈幕橫屏視圖:getFullPayBarrageView
 3.接收聊天消息:recieveChatMessage
 4.配置彈幕是否被屏蔽:configBarrageIsShield

PXXRoomEmojiModule

 Emoji表情組件
 public:
 1.獲取表情管理:getChatEmojiManager
 2.獲取全部png表情信息:getAllPngEmojiDictionary
 3.獲取全部gif表情信息:getAllGifEmojiDictionary
 4.獲取表情數(shù)量:getEmojiCount

PXXRoomBarrageModule

 全屏彈幕層組件
 public:
 1.獲取全屏彈幕視圖:getFullBarrageView
 2.接收聊天消息:recieveChatMessage:
 3.添加用戶自己聊天信息:appendCurrentUserChatMessage:
 4.添加用戶自己聊天信息:appendCurrentUserNormalChatMessage:
 5.添加禮物聊天信息:appendGiftChatMessage
 6.配置彈幕是否被屏蔽:configBarrageIsShield:

PXXScreenAreaAnimateModule

 視頻區(qū)域動(dòng)畫組件

PXXRoomAnimationModule

 直播間視圖區(qū)域管理組件 
 public:
 1.從英雄視圖跳轉(zhuǎn)其他房間:jumpToOtherRoom:heroView:
 2.跳轉(zhuǎn)其他房間: jumpToOtherRoom:origin:
 3.配置高能彈幕視圖  configPayBarrageView
 4.配置世界彈幕視圖  configWorldBarrageView:
 5.配置進(jìn)場(chǎng)特效視圖  configEnterSpecialView:

UIModule

PXXRoomLineSettingContributeMoudule

 直播線路管理組件
 public:
 1.顯示直播間線路設(shè)置showRoomLineSettingContributeModule
 2.隱藏直播間線路設(shè)置 showRoomLineSettingContributeModule                                                                                                                                                                                                                        
 3:設(shè)置直播間setVideoLineSwitch

PXXRoomInteractionMoudule

 直播間交互管理組件
 public:
 1.隱藏/顯示輕度提醒 :showLightRemind
 2.隱藏/顯示輕度提醒視圖:removeLightRemin
 3.移除輕度提醒:removeLightRemind
 4.是否睡眠退出狀態(tài):getbDormancyDestory
 5.展示全屏提示:showFullScreenToast:

PXXRoomExtendedMoudule

 直播間擴(kuò)展組件
 public:
 直播間擴(kuò)展view管理
 1.addExtAreaViewBlock:forKey:
 2.addExtAreaItemClassString:forKey:
 3.updateTabFromExtData:
 4.updateExtendedItem:isShowShortVideoTab:
 5.arrayTabData
 6.findExtendedViewFormTag:
 7.findSegmentIndexFormTag:
 8.findExtendedItemFormType:

 9.scrollToExtendedViewSegmentIndex:animated:
 10.scrollToExtendedViewFromTag:animated:
 11.updateSegmentCustomSkinImg
 12.setScrollEnable

RoomCore

PXXRoomContentMode

 直播組件管理基類

PXXKeyboardListener

 鍵盤監(jiān)聽組件

ModuleCenter

 組件管理中心
 1.功能組件化管理
 2.組件方法消息調(diào)用
 public:
 1.setRoomFunction:
 2.setRoomContext:
 3.loadModulesfromClass:
 4.loadModulesFromPlistFile:
 5.loadModule:
 6.unloadModule:

PXXRoomFunction

 功能組件
 public:
 1.允許屏幕旋轉(zhuǎn):enableAutorotate:
 2.轉(zhuǎn)換屏幕方向:transformScreenOrientation:
 3.轉(zhuǎn)換屏幕方向:transformScreenOrientation:complete:
 4.退出房間:leaveRoom
 5.登錄判斷:popupLoginIfLogout
 6.直播間彈:toast:showToast:
 7.通用提示充值:pushRechargeControllerAndSource:
 8.通用進(jìn)入貓店彪置,目前世界彈幕使用:pushCatShop
 9.判斷的是主播在自己房間發(fā)言:isHostEnterRoomSendMsg
 10.buyWangsuFlowPackage
 11.flowPackageSetting
 12.退出全屏:leaveFullscreenMode

PXXRoomModule

 組件基類:用于功能組件繼承拄踪;

PXXRoomStateContext

 房間基礎(chǔ)信息組件
 1.保存直播間部分狀態(tài)和內(nèi)容信息
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市拳魁,隨后出現(xiàn)的幾起案子惶桐,更是在濱河造成了極大的恐慌,老刑警劉巖潘懊,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件姚糊,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡授舟,警方通過(guò)查閱死者的電腦和手機(jī)救恨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)释树,“玉大人肠槽,你說(shuō)我怎么就攤上這事∩萆叮” “怎么了署浩?”我有些...
    開封第一講書人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)扫尺。 經(jīng)常有香客問(wèn)我,道長(zhǎng)炊汤,這世上最難降的妖魔是什么正驻? 我笑而不...
    開封第一講書人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任弊攘,我火速辦了婚禮,結(jié)果婚禮上姑曙,老公的妹妹穿的比我還像新娘襟交。我一直安慰自己,他們只是感情好伤靠,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開白布捣域。 她就那樣靜靜地躺著,像睡著了一般宴合。 火紅的嫁衣襯著肌膚如雪焕梅。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,950評(píng)論 1 291
  • 那天卦洽,我揣著相機(jī)與錄音贞言,去河邊找鬼。 笑死阀蒂,一個(gè)胖子當(dāng)著我的面吹牛该窗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蚤霞,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼酗失,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了昧绣?” 一聲冷哼從身側(cè)響起规肴,我...
    開封第一講書人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎滞乙,沒想到半個(gè)月后奏纪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡斩启,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年序调,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兔簇。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡发绢,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出垄琐,到底是詐尸還是另有隱情边酒,我是刑警寧澤,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布狸窘,位于F島的核電站墩朦,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏翻擒。R本人自食惡果不足惜氓涣,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一牛哺、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧劳吠,春花似錦引润、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至蠢古,卻和暖如春奴曙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背便瑟。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工缆毁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人到涂。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓脊框,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親践啄。 傳聞我的和親對(duì)象是個(gè)殘疾皇子浇雹,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350