Android計算下載速度


title: 安卓計算下載速度
date: 2016-07-28 11:23:13
tags:

  • android

昨天開始封裝一個安卓多線程下載器,在寫的過程中,猜測想加入檢測下載過程中的速度,于是google一番,得出一個比較靠譜的答案,在此總結一下。

NANOSECONDS

NANOSECONDS,毫微秒,十億分之一秒,1s=1000000000毫微秒。

CODE EXAMPLE#

       long start = System.nanoTime();   //開始時間
            long totalRead = 0;  //總共下載了多少
            final double NANOS_PER_SECOND = 1000000000.0;  //1秒=10億nanoseconds
            final double BYTES_PER_MIB = 1024 * 1024;    //1M=1024*1024byte
            while (((len = is.read(buffler, 0, 1024)) >0)) {
                totalRead += len;
                double speed = NANOS_PER_SECOND / BYTES_PER_MIB * totalRead / (System.nanoTime() - start + 1);
}

WARNING

這種方法計算的是從start開始時間的平均速度,不是實時速度。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容