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


関連記事

[初心者向け]続・Xcodeの使い方(よく使うショートカットキーとエディタ)

1 はじめに1.1 前提条件2 ショートカットキー2.1 定義に移動(Jump to Definition)2.2 Quick Help2.3 Rename2.4 Edit All in Scope2 ...

Moya vs APIKit

1 はじめに2 MoyaとAPIKitの概要2.1 Githubの比較2.2 機能比較3 実装の比較3.1 リクエスト定義3.2 レスポンスstruct3.3 リクエスト送信3.4 出力結果4 さいご ...

CollectionViewのカスタムレイアウトを作ってみた

1 はじめに2 作成するレイアウト2.1 レイアウト2.2 手順3 prepare( )4 layoutAttributesForItem(at indexPath: IndexPath)5 layo ...

【Swift】スクリーンショットの検知

1 はじめに2 スクショを検知する方法3 使い方4 さいごに5 おすすめ書籍 はじめに こんにちは、suzukiです。今回はユーザがスクリーンショットを取得した場合を検知にする方法についてです。 使わ ...

swift

Swift3でMapKitの吹き出し(Callout)タップを取得したい!

1 はじめに2 MapKitでの吹き出しタップ3 吹き出しのみタップしたい!4 さいごに はじめに こんにちは、nukkyです。 今回、iOSのMapKitでGoogleMapのように 吹き出しのタッ ...

フォロー

blog-page_side_responsive

2018年8月
 1234
567891011
12131415161718
19202122232425
262728293031  

アプリ情報

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