最近要做直播蚀瘸,雖然項(xiàng)目還沒(méi)動(dòng)工狡蝶,但是SDK和Demo已經(jīng)到了。所以先來(lái)動(dòng)手看一下上傳速度和下載速度苍姜,也就是在直播中牢酵,我們說(shuō)的推流速度和觀看速度。
一衙猪、
推流速度就是馍乙,當(dāng)我是主播的時(shí)候,send的速度垫释,丝格;
觀看速度,即當(dāng)我是觀眾的時(shí)候棵譬,received的速度显蝌。
二、用到的工具:
BHBNetworkSpeed
三订咸、步驟:
1曼尊、直接去google一下BHBNetworkSpeed,會(huì)在gitHub上搜到的脏嚷,下載下來(lái)骆撇,它會(huì)有demo,我們?cè)谶\(yùn)行的時(shí)候會(huì)發(fā)現(xiàn)父叙,它打印的時(shí)候不管什么速度都是0.
這是因?yàn)樗贏ppDelegate里面神郊,沒(méi)有設(shè)window肴裙,所以我們的屏幕是黑的,上面只有一個(gè)電池涌乳,并且這個(gè)demo也沒(méi)有在當(dāng)前頁(yè)面里面做什么事情蜻懦,所以速度都是0.
2、回到我們自己的項(xiàng)目夕晓,然后在Build Phases的下面宛乃,找到Link Binary With Libraries,點(diǎn)擊加號(hào)运授,導(dǎo)入SystemConfiguration.framework烤惊。
3乔煞、將我們剛剛在gitHub上下的demo里面的類BHBNetworkSpeed吁朦,拖到我們自己的項(xiàng)目中去。
4渡贾、然后我們要監(jiān)測(cè)哪個(gè)頁(yè)面的上傳速度和下載速度(比如我要監(jiān)測(cè)的就是我直播界面的推流速度)逗宜,就去到那個(gè)控制器,然后在viewDidLoad中:
//開啟監(jiān)聽
[[BHBNetworkSpeedshareNetworkSpeed]startMonitoringNetworkSpeed];
//注冊(cè)下載網(wǎng)速通知
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(log)name:kNetworkReceivedSpeedNotificationobject:nil];
//注冊(cè)上傳網(wǎng)速通知
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(log)name:kNetworkSendSpeedNotificationobject:nil];
(可以直接把這3句代碼copy到你的項(xiàng)目中)
5空骚、在下面實(shí)現(xiàn)通知里面的方法:
- (void)log{
NSLog(@"speed+++++received:%@",[BHBNetworkSpeedshareNetworkSpeed].receivedNetworkSpeed);
NSLog(@"speed+++++send:%@",[BHBNetworkSpeedshareNetworkSpeed].sendNetworkSpeed);
}
6纺讲、關(guān)閉監(jiān)聽
-(void)viewWillDisappear:(BOOL)animated{
//關(guān)閉監(jiān)聽
[[BHBNetworkSpeedshareNetworkSpeed]stopMonitoringNetworkSpeed];
}
四、結(jié)果
通過(guò)以上的步驟囤屹,我們就可以在我們需要的界面熬甚,讀到想要的速度。
如肋坚,我運(yùn)行出來(lái)乡括,打印的推流速度,約在240kb/s左右: