iOS

[Swift]Alamofireを使ってファイルをDLしてみる

投稿日:

はじめに

こんにちは、nukkyです。
みなさんSwiftでの通信ライブラリは何を使ってますか?
私はAlamofireを使っています、人気・実績ともにありますし情報量も多いです。
今回はそのAlamofireを使ってファイルのDLを行なっていきたいと思います。

前提条件

Xcode 9.x
iOS 11 Simulator
Swift 4.0

 

今回やること

今回はAlamofireをつかってWeb上のファイルをDLがメインになります、もしAlamofireわかんないとか、普通にAlamofireを使ってAPIにアクセスしたいという方はまた別の機会で紹介します。

 

準備

今回はCarthageを使用します。
https://github.com/Carthage/Carthage
Cartfileにこちらを記述してください。

そうしたら、以下のコマンドでビルドしてください。

CocoaPodsを使いたい方でも大丈夫です。
Podfileに以下を追加してください。

追加したらターミナルから以下のコマンドを実行してください。

 

実装

ファイルのDL
では早速ファイルをDLしていきます。

まずDownloadFileDestinationを用意します、ここで指定したURLにDLしたファイルが保存されます。
returnで返しているオプションですが以下の内容になります。

.removePreviousFile – 指定されている場合、宛先URLから前のファイルを削除します。
.createIntermediateDirectories – 指定されている場合、宛先URLの中間ディレクトリを作成します。

ファイルのDLですがAlamofireのdownload関数を使用します、DLしたいファイルのURLと先ほど用意したDownloadFileDestinationを渡します。
エラーがない場合はresponseが返却された時点でファイルはDownloadFileDestinationで指定したURLで保存されています。

これだけでファイルのDLは実装完了です、とても簡単ですね!

DLしたファイルへのアクセス

DLしたファイルへのパス取得も書いておきます。
上記download関数でdata.txtをDLしていた場合、以下の処理でファイルパスが取得できます。

 

さいごに

ファイルのDLとか面倒かなと思ってましたがAlamofireをつかうとものすごく簡単に実装できるので、検討中の方は是非試してみてください。

しかし、ますますAlamofireが手放せなくなってきました、もしSwiftの通信ライブラリでおすすめとかありましたら教えてください!

RE:ENGINESブログ「iOS記事」まとめページはこちらから

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

Sign in with Appleの実装

1 はじめに2 Sign in with Appleとは2.1 iOS レビューガイドライン2.2 つまり3 準備4 実装5 デザイン6 さいごに7 おすすめ書籍 はじめに こんにちは、nukkyです ...

【Swift】SwiftUIの理解のためDSL記法とFunctionBuilderを調べてみた

1 はじめに2 DSL(ドメイン固有言語)について3 関数ビルダ3.1 定義方法3.2 使用方法3.3 SwiftUIの関数ビルダ4 カスタム属性5 さいごに6 おすすめ書籍 はじめに Xcode11 ...

【SwiftUI】ドラッグ&ドロップでアプリ間の文字列の共有

1 はじめに2 ドラッグ&ドロップの実装3 ドラッグ側の実装4 ドロップ側の実装5 さいごに6 おすすめ書籍 はじめに こんにちはsuzukiです。今回はドラッグ&ドロップを利用し ...

[Swift5.5]actorで非同期のデータ競合を回避しよう!

1 はじめに2 actor2.1 actorを使用する際の注意3 さいごに4 おすすめ書籍 はじめに Swift5.5にて非同期に関する追加が行われ、async/awaitについては以前の記事で紹介し ...

iOSでFABを表現する「material-components」「Floaty」

1 はじめに2 Floating Action Button(FAB)とは3 Material Components3.1 導入方法3.2 FABの配置3.3 FABをタップした時の処理4 Float ...

フォロー

blog-page_side_responsive

2018年8月
 1234
567891011
12131415161718
19202122232425
262728293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。