Ios Alamofire 4/Swift:进度处理程序不再提供ByteRead和TotalByteRead了?
最近,我正在尝试迁移到Swift 3,这意味着我还需要使用Alamofire 4 在Alamofire 3中,进度处理程序提供对ByteRead、TotalByteRead、TotalByteExpectedToRead的访问,但是在Alamofire 4中,处理程序似乎只有一个参数“progress”,它只允许我查看“fractionCompleted”。但是我需要为UILabel的文本使用bytesRead和totalBytesRead。我想知道我能得到这两个值吗?非常感谢 修改:Ios Alamofire 4/Swift:进度处理程序不再提供ByteRead和TotalByteRead了?,ios,swift3,alamofire,Ios,Swift3,Alamofire,最近,我正在尝试迁移到Swift 3,这意味着我还需要使用Alamofire 4 在Alamofire 3中,进度处理程序提供对ByteRead、TotalByteRead、TotalByteExpectedToRead的访问,但是在Alamofire 4中,处理程序似乎只有一个参数“progress”,它只允许我查看“fractionCompleted”。但是我需要为UILabel的文本使用bytesRead和totalBytesRead。我想知道我能得到这两个值吗?非常感谢 修改: 只是查看
只是查看了Progress类,发现有
completedUnitCount
,totalUnitCount
,它们似乎是TotalByteRead和ByteRead的替代方案。不确定我是否在正确的轨道上?是的,如果您正在执行单个下载/上载任务(无子任务),您可以依靠completedUnitCount
和totalUnitCount
从Alamofire 4文件:
如果接收方NSProgress对象是“叶进程”(无子进程),
那么fractionCompleted通常是completedUnitCount/
总数单位计数。如果接收器NSProgress有子进程,则
fractionCompleted将反映在中的子对象中取得的进展
添加到自己的completedUnitCount。当孩子们结束时
将更新父级的completedUnitCount
是的,如果您正在执行单个下载/上载任务(无子任务),则可以依靠
completedUnitCount
和totalUnitCount
从Alamofire 4文件:
如果接收方NSProgress对象是“叶进程”(无子进程),
那么fractionCompleted通常是completedUnitCount/
总数单位计数。如果接收器NSProgress有子进程,则
fractionCompleted将反映在中的子对象中取得的进展
添加到自己的completedUnitCount。当孩子们结束时
将更新父级的completedUnitCount
确切地说,
totalUnitCount
和completedUnitCount
与totalBytesExpectedToRead
具有相同的含义。
bytesRead
是(在每次迭代中)增加到总bytesRead值的值
现在添加的fractionCompleted
在Double
类型中已经是一个比率,因此它在用作进度条的值时非常有用
我已经测试了几个Progress
值,因此这是代码(在大约600KB大小的文件上测试):
。。。输出如下(我从调试控制台选择了前3个迭代):
确切地说,
totalUnitCount
和completedUnitCount
与totalBytesExpectedToRead
具有相同的含义。
bytesRead
是(在每次迭代中)增加到总bytesRead值的值
现在添加的fractionCompleted
在Double
类型中已经是一个比率,因此它在用作进度条的值时非常有用
我已经测试了几个Progress
值,因此这是代码(在大约600KB大小的文件上测试):
。。。输出如下(我从调试控制台选择了前3个迭代):
如何在进度条中使用它??如何在进度条中使用它??
.downloadProgress { progress in
print("fractionCompleted: \(progress.fractionCompleted)")
print("completedUnit: \(progress.completedUnitCount)")
print("totalUnitCount: \(progress.totalUnitCount)")
}
fractionCompleted: 0.104675046718523
completedUnit: 65536
totalUnitCount: 626090
fractionCompleted: 0.209350093437046
completedUnit: 131072
totalUnitCount: 626090
fractionCompleted: 0.314025140155569
completedUnit: 196608
totalUnitCount: 626090
...