日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > Android獲取網速和下載速度

Android獲取網速和下載速度

來源:程序員人生   發布時間:2014-12-10 08:48:23 閱讀次數:5544次


Android利用里常常使用到網絡速度的顯示,特別是文件下載和視頻緩沖的時候。今天筆者就遇到需要顯示視頻播放時的網速,用到的是TrafficStats類。

查找資料,參考了Android流量統計TrafficStats類的使用


private void showNetSpeed() { long nowTotalRxBytes = getTotalRxBytes(); long nowTimeStamp = System.currentTimeMillis(); long speed = ((nowTotalRxBytes - lastTotalRxBytes) * 1000 / (nowTimeStamp - lastTimeStamp));//毫秒轉換 lastTimeStamp = nowTimeStamp; lastTotalRxBytes = nowTotalRxBytes; Message msg = mHandler.obtainMessage(); msg.what = 100; msg.obj = String.valueOf(speed) + " kb/s"; mHandler.sendMessage(msg);//更新界面 }

思路就是每隔1個時間段就去獲得這個時間段獲得到的網絡數據的大小,然后通過計算取得網速值。

private long lastTotalRxBytes = 0; private long lastTimeStamp = 0; private long getTotalRxBytes() { return TrafficStats.getUidRxBytes(getApplicationInfo().uid)==TrafficStats.UNSUPPORTED ? 0 :(TrafficStats.getTotalRxBytes()/1024);//轉為KB } TimerTask task = new TimerTask() { @Override public void run() { showNetSpeed(); } };

在這里用到的是TimerTask來定時獲得網速,并發消息更新界面。

在啟動任務時,初始化數據

lastTotalRxBytes = getTotalRxBytes(); lastTimeStamp = System.currentTimeMillis(); new Timer().schedule(task, 1000, 2000); // 1s后啟動任務,每2s履行1次


可以根據需求,多久更新獲得1次網速


如果是多個任務下載,需要分別顯示網速,就能夠直接通過在1定時間間隔內下載的數據大小來計算網速,方法類似。



生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 五月婷婷精品 | a黄色片 | 日韩视频在线播放 | 精品无码久久久久久国产 | 国产精品视屏 | 日本一区二区不卡视频 | 精品久久久影院 | 久久久久久毛片精品免费不卡 | 亚洲精美视频 | 免费毛片网 | 国产精品一区在线 | 日韩视频在线一区二区 | 91亚洲国产精品 | 国产又黄又爽又色在线视频播放 | 日韩在线不卡视频 | 国产又黄又爽又色的免费视频 | 不卡一二三区 | 国产区在线看 | 夜夜骑狠狠干 | 久久久久高清 | 老牛嫩草一区二区三区日本 | 中文字幕第9页 | 91麻豆精品国产91久久久资源速度 | 精品久久久久久久久久久下田 | 成人久久| 天天插天天插 | 日韩精品极品视频 | jizz日韩| 麻豆国产一区二区三区四区 | 久草成人在线 | 亚洲伦理一区二区 | a级片网站| 中文字幕区一区二 | 久久久久夜夜夜精品国产 | 91超碰免费| av资源在线看 | 人人九九精 | 欧美日韩综合一区 | 日韩国产成人 | 日韩a级毛片免费观看久久 精品一区二区在线播放 | 国产午夜精品一区二区三区四区 |