Kingfisher
Gratis snelle bibliotheek om afbeeldingen te downloaden en te cachen
Open source Swift API waarmee softwareontwikkelaars kunnen werken met externe afbeeldingen in hun web-apps. Hiermee kunt u afbeeldingen downloaden en cachen, beeldprocessors en filters toepassen.
Kingfisher is een lichtgewicht pure Swift-implementatie die volledige functionaliteit bood voor het werken met meerdere afbeeldingsbestandsindelingen met behulp van Swift-code. De bibliotheek helpt ontwikkelaars om applicaties te maken die afbeeldingen gemakkelijk op afstand kunnen verwerken. De bibliotheek downloadt asynchroon en slaat afbeeldingen op in hun eigen applicaties. De bibliotheek ondersteunt een cache met meerdere lagen voor de gedownloade afbeeldingen die de prestaties van de apps enorm verbeteren. Dat betekent dat afbeeldingen zowel in het geheugen als op de schijf worden opgeslagen, dus u hoeft ze niet opnieuw te downloaden.
De bibliotheek is zeer gemakkelijk te hanteren en biedt een faciliteit voor cachebeheer. Gebruikers kunnen eenvoudig de grootte en de duur van de cache instellen. Het zal ook een automatische cache-opschoningsfaciliteit bieden die gebruikers helpt te voorkomen dat de bibliotheek te veel bronnen gebruikt. Een andere geweldige functie is inbegrepen voor het annuleren van taken. Gebruikers kunnen het downloaden of het ophalen van afbeeldingen eenvoudig annuleren als het niet meer nodig is.
De Kingfisher-bibliotheek stelt ontwikkelaars in staat om componenten voor het downloaden van afbeeldingen en caching van afbeeldingen afzonderlijk te gebruiken, afhankelijk van hun behoeften. U kunt zelfs uw eigen cache maken volgens uw eigen behoeften met behulp van Swift-code. Het verbetert de prestaties van de schijfcache door onnodige schijfbewerkingen te vermijden. De bibliotheek is open source en is beschikbaar onder de MIT-licentie.
Aan de slag met Kingfisher
Kloon de nieuwste bronnen met behulp van de volgende opdracht:
Installeer Kingfisher via GitHub.
$ git submodule add https://github.com/onevcat/Kingfisher.git
Download Cache Image via Swift Bibliotheek
Het is een zeer moeilijke taak om een beeld te downloaden en op te slaan met een URL. De open bron Swift bibliotheek Kingfisher maakt het makkelijk voor softwareontwikkelaars om efficiënt te downloaden en cache beelden in hun eigen aanvragen. De bibliotheek steunt beelden in het geheugen en ook op disk. De hoeveelheid AM die gebruikt zal worden is niet eens beperkt en gebruikers kunnen de waarde zelf bepalen.
Download Cache Image via Swift Bibliotheek
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])
Image Viewing in Swift App
De Kingfisher Bibliotheek laat software programmeurs inbegrepen beelden zien in hun toepassing met gemak. De makkelijkste manier om een imago te laten zien is door UllmageView verlenging te gebruiken. De bibliotheek zal het beeld van URL downloaden en het leiden naar zowel geheugenkache als disk cache en vertoon het in imageView. Als de laatste gebruikers dezelfde URL noemen, zal het snel het beeld van de kassa terughalen. Het ondersteunt ook verschillende functies gerelateerd aan beelden als vervagende download beelden, het tonen van placehouder, om de hoek enzovoort.
View Images in Swift App
import Kingfisher
let url = URL(string: "https://example.com/image.png")
imageView.kf.setImage(with: url)
Handmatig Store of verwijder Cache Images
De open bron die Swift Bibliotheek Kingfisher maakt in staat programmeurs op te slaan en beelden te verwijderen van cache met gemak. Bij gebrek aan uitbreidingsmethodes kunnen gebruikt worden om het bereikte beeld automatisch op te bergen. Maar je kunt het handmatig doen met cache. Je kunt ook de originele gegevens van het beeld doorgeven die de bibliotheek helpen bepalen in welke vorm het beeld moet worden opgeslagen. Het geeft ook steun voor handmatig het verwijderen van een bepaald beeld van kache. Het steunt ook alle cache gegevens, rapporteer disk opslag groot en creëert je eigen cache.
View Images in Swift App
//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)
}
}