編輯:關於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開發中湧現出許多優秀的框架,比如:Retrofit、Afinal、OKHttp、ButterKnife、AndFix等等。這些框架
前言已經好長時間沒更新博客了,今天給大家帶來一個橫向滾動的菜單,用的是HorizontalScrollView,但HorizontalScrollView不能在滾動時定位
OKHttp3是如今非常流行的Android網絡請求框架,那麼如何利用Android實現斷點續傳呢,今天寫了個Demo嘗試了一下,感覺還是有點意思准備階段我們會用到OKH
一、需求:launcher上的圖標統一改成矩形,如下圖所示;二、實現方案原圖1截圓加白背板圖1原本這類圖標會再細分為兩類分別做處理。一類為背板顏色較單一的,如google