1. Produkti
  2.   Attēls
  3.   Swift
  4.   Kingfisher

Kingfisher

 
 

Bezmaksas Swift bibliotēka, lai lejupielādētu un saglabātu attēlus kešatmiņā

Atvērtā pirmkoda Swift API, kas programmatūras izstrādātājiem ļauj strādāt ar attāliem attēliem savās tīmekļa lietotnēs. Tas ļauj lejupielādēt un saglabāt attēlus kešatmiņā, lietot attēlu procesorus un filtrus.

Kingfisher ir viegla, tīra Swift ieviešana, kas nodrošina pilnīgu funkcionalitāti darbam ar vairākiem attēlu failu formātiem, izmantojot Swift kodu. Bibliotēka palīdz izstrādātājiem izveidot lietojumprogrammas, kas var viegli attālināti apstrādāt attēlus. Bibliotēka asinhroni lejupielādē un saglabā attēlus kešatmiņā savās lietojumprogrammās. Bibliotēka atbalsta vairāku slāņu kešatmiņu lejupielādētajiem attēliem, kas ievērojami uzlabo lietotņu veiktspēju. Tas nozīmē, ka attēli tiks saglabāti kešatmiņā gan atmiņā, gan diskā, tāpēc tie nav jālejupielādē vēlreiz.

Bibliotēka ir ļoti viegli apstrādājama, un tā nodrošina iespēju pārvaldīt kešatmiņu. Lietotāji var viegli iestatīt kešatmiņas lielumu, kā arī ilgumu. Tas nodrošinās arī automātisku kešatmiņas tīrīšanas iespēju, kas palīdz lietotājiem novērst to, ka bibliotēka izmanto pārāk daudz resursu. Vēl viena lieliska funkcija ir iekļauta uzdevumu atcelšanai. Lietotāji var viegli atcelt lejupielādes vai attēlu izgūšanas procesu, ja tas vairs nav nepieciešams.

Kingfisher bibliotēka ļauj izstrādātājiem izmantot attēlu lejupielādes un attēlu kešatmiņas komponentus atsevišķi atbilstoši savām vajadzībām. Jūs pat varat izveidot savu kešatmiņu atbilstoši savām vajadzībām, izmantojot Swift kodu. Tas uzlabo diska kešatmiņas veiktspēju, izvairoties no nevajadzīgām diska operācijām. Bibliotēka ir atvērtā koda un ir pieejama saskaņā ar MIT licenci.

Previous Next

Darba sākšana ar Kingfisher

Klonējiet jaunākos avotus, izmantojot šo komandu

Instalējiet Kingfisher, izmantojot GitHub.

$ git submodule add https://github.com/onevcat/Kingfisher.git 

Lejupielādējiet un saglabājiet attēlus kešatmiņā, izmantojot Swift bibliotēku

Programmatiski lejupielādēt attēlu un saglabāt to kešatmiņā, izmantojot URL, ir ļoti sarežģīts uzdevums. Atvērtā pirmkoda Swift bibliotēka Kingfisher ļauj programmatūras izstrādātājiem ērti lejupielādēt un saglabāt kešatmiņā attēlus savās lietojumprogrammās. Bibliotēka atbalsta attēlu saglabāšanu kešatmiņā gan atmiņā, gan diskā. Pēc noklusējuma RAM apjoms, kas tiks izmantots, nav pat ierobežots, un lietotāji paši var iestatīt vērtību.

Lejupielādējiet un saglabājiet attēlus kešatmiņā, izmantojot Swift bibliotēku

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])

Attēlu skatīšana programmā Swift Apps

Kingfisher bibliotēka ļauj programmatūras programmētājiem savā lietojumprogrammā viegli iekļaut attēlu skatīšanas iespēju. Vienkāršākais veids, kā iestatīt attēla skatu, ir izmantot paplašinājumu UIImageView. Bibliotēka lejupielādēs attēlu no URL un novirzīs to gan uz atmiņas kešatmiņu, gan uz diska kešatmiņu un parādīs to imageView. Kad pēdējie lietotāji izsauc to pašu URL, tas nekavējoties izgūs un parādīs attēlu no kešatmiņas. Tā atbalsta arī vairākas ar attēliem saistītas funkcijas, piemēram, lejupielādes attēla izbalēšanu, viettura rādīšanu, apaļā stūra attēlu un tā tālāk.

Skatiet attēlus programmā Swift Apps

import Kingfisher
let url = URL(string: "https://example.com/image.png")
imageView.kf.setImage(with: url)

Manuāli saglabājiet vai noņemiet kešatmiņas attēlus

Atvērtā koda Swift bibliotēka Kingfisher ļauj programmētājiem viegli saglabāt un noņemt attēlus no kešatmiņas. Pēc noklusējuma skata paplašinājuma metodes var izmantot, lai automātiski saglabātu izgūto attēlu kešatmiņā. Bet to var izdarīt manuāli, izmantojot metodi cache.store(). Varat arī nodot attēla sākotnējos datus, kas palīdz bibliotēkai noteikt, kādā formātā attēls ir jāuzglabā. Tas arī nodrošina atbalstu noteikta attēla manuālai noņemšanai no kešatmiņas. Tas arī atbalsta visu kešatmiņas datu notīrīšanu, diska krātuves lieluma pārskatu un savas kešatmiņas izveidi.

Skatiet attēlus programmā Swift Apps

//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)
    }
}
 Latviski