繁体   English   中英

如何找到剩余的上传时间

[英]How to find remaining time for uploading

在我的Iphone应用程序中,我正在将视频上传到服务器。 我可以找出总叮咬数和上传叮咬数,有什么办法可以找到剩余时间完成上传过程

我正在打印这样的片段------上传的字节------总字节----------

2013-02-07 01:25:33.439 VideoProject[9170:907] ------32768------2195238-----------
2013-02-07 01:25:33.451 VideoProject[9170:907] ------65536------2195238-----------
2013-02-07 01:25:33.456 VideoProject[9170:907] ------98304------2195238-----------
2013-02-07 01:25:33.462 VideoProject[9170:907] ------131072------2195238-----------
.
.
.
.
2013-02-07 01:25:54.443 VideoProject[9170:907] ------2129920------2195238-----------
2013-02-07 01:25:54.449 VideoProject[9170:907] ------2145728------2195238----------- 
2013-02-07 01:25:55.215 VideoProject[9170:907] ------2162688------2195238----------- 
2013-02-07 01:25:55.222 VideoProject[9170:907] ------2193380------2195238-----------
2013-02-07 01:25:55.542 VideoProject[9170:907] ------2195238------2195238-----------

您可以保存开始日期,并在每次调用进度函数(或块)时,计算自开始以来经过的时间,并通过简单的交叉乘法找到估计的剩余时间量,因为您知道还剩多少字节:

elapsed_time * total_bytes = total_time * downloaded_bytes
remaining_time = total_time - elapsed_time

但是,是的,网络状况可能随时发生变化,因此并不是很准确。

使用可达性,您可以点击这里

使用可达性,您可以计算网络的速度,然后以该速度可以划分剩余的字节,并可以得出剩余的上载时间等结果。

希望这可以帮助..

  • 获取以秒为单位的字节上传时间。
  • 估计总时间(以秒为单位)。 可以通过比较字节来找到
  • 通过发现差异来找到剩余时间。
  • 使用下面的获取小时,分钟,秒。

`

- (NSDictionary*)createTimemapForSeconds:(int)seco                                   
  {
       int hours = floor(seco / (60 * 60) );

       float minute_divisor = seco % (60 * 60);
       int minut = floor(minute_divisor / 60);

       float seconds_divisor = seco % 60;
       seco = ceil(seconds_divisor);

       NSDictionary * timeMap = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSNumber numberWithInt:hours], [NSNumber numberWithInt:minut], [NSNumber numberWithInt:seco], nil] forKeys:[NSArray arrayWithObjects:@"h", @"m", @"s", nil]];

       return timeMap;
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM