Kingfisher
Libreria rapida gratuita da scaricare e memorizzare nella cache le immagini
API Swift open source che consente agli sviluppatori di software di lavorare con immagini remote all'interno delle loro app web. Consente di scaricare e memorizzare nella cache le immagini, applicare processori di immagini e filtri.
Kingfisher è una leggera implementazione Swift pura che ha fornito funzionalità complete per lavorare con più formati di file immagine utilizzando il codice Swift. La libreria aiuta gli sviluppatori a creare applicazioni che possono gestire in remoto le immagini con facilità. La biblioteca download asincrono così come cache immagini all'interno delle proprie applicazioni. La libreria supporta una cache a più strati per le immagini scaricate che migliorano immensamente le prestazioni delle app. Ciò significa che le immagini saranno cache in memoria e su disco quindi non c'è bisogno di scaricarlo di nuovo.
La libreria è molto facile da gestire e fornisce una funzione per la gestione della cache. Gli utenti possono facilmente impostare la dimensione e la durata della cache. Fornirà inoltre una funzione di pulizia automatica della cache che aiuta gli utenti a impedire che la libreria utilizzi troppe risorse. Un'altra grande funzionalità è inclusa per l'annullamento delle attività. Gli utenti possono facilmente annullare il processo di download o recupero delle immagini se non è più necessario.
La libreria Kingfisher facilita agli sviluppatori di utilizzare i componenti per il download delle immagini e la cache delle immagini separatamente in base alle loro esigenze. Puoi anche creare la tua cache in base alle tue esigenze utilizzando il codice Swift. Ha migliorato le prestazioni della cache del disco evitando operazioni inutili del disco. La libreria è open source ed è disponibile sotto la licenza IT.
Iniziare con Kingfisher
Clona le ultime fonti usando il comando seguente
Installa Kingfisher tramite GitHub.
$ git submodule add https://github.com/onevcat/Kingfisher.git
Download & Cache Immagini via Swift Library
È un compito molto difficile scaricare programmaticamente un'immagine e memorizzarla in cache utilizzando un URL. La libreria open source Swift Kingfisher consente agli sviluppatori di software di scaricare e nascondere in modo efficiente le immagini all'interno delle proprie applicazioni. La libreria supporta le immagini di cache sia in memoria che su disco. Per impostazione predefinita, l'importo di AM che verrà utilizzato non è nemmeno limitato e gli utenti possono impostare il valore stesso.
Download & Cache Immagini via Swift Library
let urls = ["https://example.com/image1.jpg", "https://example.com/image2.jpg"]
.map { URL(string: $0)! }
let prefetcher = ImagePrefetcher(urls: urls) {
skippedResources, failedResources, completedResources in
print("These resources are prefetched: \(completedResources)")
}
prefetcher.start()
// Later when you need to display these images:
imageView.kf.setImage(with: urls[0])
anotherImageView.kf.setImage(with: urls[1])
Visualizzazione immagine all'interno di App Swift
La libreria Kingfisher consente ai programmatori di software di includere la capacità di visualizzazione delle immagini all'interno della loro applicazione con facilità. Il modo più semplice per impostare una vista immagine è utilizzare UIImageView estensione. La libreria scaricherà l'immagine da URL e la condurrà sia alla cache di memoria che alla cache del disco, e la visualizzerà in imageView. Quando questi ultimi utenti chiamano lo stesso URL, sarà rapidamente recuperare e visualizzare l'immagine dalla cache. Supporta anche diverse funzioni relative a immagini come l'immagine di download di dissolvenza, mostrando segnaposto, immagine angolo rotondo e così via.
Visualizza immagini all'interno di App Swift
import Kingfisher
let url = URL(string: "https://example.com/image.png")
imageView.kf.setImage(with: url)
Conservare manualmente o rimuovere immagini cache
La libreria Swift Kingfisher consente ai programmatori di memorizzare e rimuovere le immagini dalla cache con facilità. Per impostazione predefinita, i metodi di estensione della visualizzazione possono essere utilizzati per memorizzare l'immagine recuperata in cache automaticamente. Ma puoi farlo manualmente con il metodo cache.store(). È inoltre possibile passare i dati originali dell'immagine che aiutano la libreria a determinare in quale formato l'immagine deve essere memorizzata. Fornisce anche il supporto per rimuovere manualmente una certa immagine dalla cache. Supporta anche la pulizia di tutti i dati della cache, la dimensione dell'archiviazione del disco e la creazione della propria cache.
Visualizza immagini all'interno di App Swift
//Check whether an image in the cache
let cache = ImageCache.default
let cached = cache.isCached(forKey: cacheKey)
// To know where the cached image is:
let cacheType = cache.imageCachedType(forKey: cacheKey)
// `.memory`, `.disk` or `.none`.
// Store Image in the cache
let processor = RoundCornerImageProcessor(cornerRadius: 20)
imageView.kf.setImage(with: url, options: [.processor(processor)])
// Later
cache.isCached(forKey: cacheKey, processorIdentifier: processor.identifier)
// Retrieve image from cache
cache.retrieveImage(forKey: "cacheKey") { result in
switch result {
case .success(let value):
print(value.cacheType)
// If the `cacheType is `.none`, `image` will be `nil`.
print(value.image)
case .failure(let error):
print(error)
}
}