編輯:關於Android編程
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);//更新界面
} 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();
}
};在啟動任務時,初始化數據
lastTotalRxBytes = getTotalRxBytes(); lastTimeStamp = System.currentTimeMillis(); new Timer().schedule(task, 1000, 2000); // 1s後啟動任務,每2s執行一次
可以根據需求,多久更新獲取一次網速
如果是多個任務下載,需要分別顯示網速,就可以直接通過在一定時間間隔內下載的數據大小來計算網速,方法類似。
詳解Android主流框架不可或缺的基石
前言經過幾年的發展和沉澱,Android開發中湧現出許多優秀的框架,比如:Retrofit、Afinal、OKHttp、ButterKnife、AndFix等等。這些框架
Android-自定義View(1)
前言已經好長時間沒更新博客了,今天給大家帶來一個橫向滾動的菜單,用的是HorizontalScrollView,但HorizontalScrollView不能在滾動時定位
詳解Android使用OKHttp3實現下載(斷點續傳、顯示進度)
OKHttp3是如今非常流行的Android網絡請求框架,那麼如何利用Android實現斷點續傳呢,今天寫了個Demo嘗試了一下,感覺還是有點意思准備階段我們會用到OKH
launcher矩形圖標
一、需求:launcher上的圖標統一改成矩形,如下圖所示;二、實現方案原圖1截圓加白背板圖1原本這類圖標會再細分為兩類分別做處理。一類為背板顏色較單一的,如google