中断/再開が可能な Object Body のダウンロードをする例を以下に挙げます。
Swift:
-
-
Objective-C:
-
-
ここでは以下の処理を実施しています。
KiiObject
インスタンスを作成。
- ダウンロード対象ファイルのリファレンスを指定して
downloader(_:)
メソッドを実行し、KiiDownloader
インスタンスを作成。
- Progress block を定義。
transfer(progressBlock:andCompletionBlock:_:)
` メソッドを実行して、ダウンロードを開始。
ブロッキング API の transfer(progressBlock:_:)
メソッドをメインスレッドから呼び出した場合、Progress block は呼び出されません。
Progress block は、転送の進捗状況に応じて呼び出されます。転送サイズが小さい場合は、1 回目の呼び出しで 100% の進捗を示すことがあります。
何らかの理由によりダウンロードが中断した場合はエラーが発生します。この場合、中断箇所よりダウンロードの再開を行うことができます。再開方法については ダウンロードの再開 を参照してください。