2015 年から画像を提供
シンプルで柔軟な API を使用して、さまざまなソースから画像を読み込み、アプリに表示します。強力な画像処理機能と堅牢なキャッシュ システムを活用してください。
このフレームワークは無駄がなく、2 秒未満でコンパイルされます¹。コードベースの 2 倍のサイズの自動テスト スイートがあり、優れた信頼性を保証します。 Nuke はパフォーマンスが最適化されており、その高度なアーキテクチャにより事実上無限のカスタマイズの可能性が可能になります。
メモリとディスク キャッシュ·画像処理と圧縮解除·リクエストの結合と優先順位·プリフェッチ·再開可能なダウンロード·プログレッシブ JPEG · HEIF、WebP、SVG、GIF · SwiftUI ·非同期/待機
経過:フォロワーではなく友達。
Nuke は以下でもサポートされています。
代理人 | バックスペーストラベル |
Nuke は、推奨オプションである Swift Package Manager をサポートしています。それがうまくいかない場合は、リリースに付属しているバイナリ フレームワークを使用できます。
パッケージには、ニーズに応じてインストールできる 4 つのモジュールが同梱されています。
モジュール | 説明 |
---|---|
核攻撃 | ImagePipeline 、 ImageRequest などを備えた無駄のないコア フレームワーク |
NukeUI | UI コンポーネント: LazyImage (SwiftUI) およびImageView (UIKit、AppKit) |
NukeExtensions | UIImageView の拡張機能(UIKit、AppKit) |
ニュークビデオ | 短いビデオをデコードして再生するためのコンポーネント |
Nuke は、豊富なドキュメントと最新の API のおかげで、学習と使用が簡単です。
ImagePipeline
使用して、リーン コアNukeモジュールからイメージをロードできます。
funcloadImage() async throws { let imageTask = ImagePipeline.shared.imageTask(with: url) for await progress in imageTask.progress { // 進行状況を更新 } imageView.image = 待ってみる imageTask.image}
または、 NukeUIモジュールの組み込み UI コンポーネントを使用することもできます。
struct ContentView: View { var body: some View { LazyImage(url: URL(string: "https://example.com/image.jpeg")) }}
入門ガイドは、これらの API やフレームワークによって提供される他の多くの API について学び始めるのに最適な場所です。その他の使用例については、 Nuke Demoをご覧ください。
画像パイプラインは簡単にカスタマイズおよび拡張できます。コミュニティによって構築された次の一流の拡張機能とパッケージをチェックしてください。
名前 | 説明 |
---|---|
アラモファイアプラグイン | ネットワーク層を Alamofire に置き換える |
NukeWebP | コミュニティ。 WebP サポート、Maxim Kolesnik によって構築されました |
WebP プラグイン | コミュニティ。 WebP サポート、Ryo Kosuge によって構築されました |
AVIFプラグイン | コミュニティ。デニスによって構築された AVIF サポート |
Rxニューク | Nuke 用の RxSwift 拡張機能と例 |
画像リクエストなどのネットワークリクエストをログに記録する方法をお探しですか?パルスをチェックしてください。
以前のバージョンからアップグレードしますか?移行ガイドを使用してください。
核攻撃 | 日付 | 迅速 | Xcode | プラットフォーム |
---|---|---|---|---|
ニューク 12.0 | 2023 年 3 月 4 日 | スイフト5.7 | Xcode 15.0 | iOS 13.0、watchOS 6.0、macOS 10.15、tvOS 13.0 |
ニューク11.0 | 2022 年 7 月 20 日 | スイフト5.6 | Xcode 13.3 | iOS 13.0、watchOS 6.0、macOS 10.15、tvOS 13.0 |
ニューク10.0 | 2021年6月1日 | スイフト5.3 | Xcode 12.0 | iOS 11.0、watchOS 4.0、macOS 10.13、tvOS 11.0 |
バージョン 12.3 以降、Nuke にはvisionOS サポート (ベータ版) も付属しています。
Nuke は MIT ライセンスの下で利用可能です。詳細については、LICENSE ファイルを参照してください。
¹ MacBook Pro 14" 2021 (10コア M1 Pro) で測定