iOS 26 will remove ALAssetsLibrary. When do you expect to provide a compatible version?
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- ios, swift
- Ambito
- mobile-dev
Direzione di ricerca
Start by locating the PromiseKit code containing the UIImagePickerController promise and its ALAssetsLibrary usage. Research the iOS 26-compatible replacement and determine how the image-data path should preserve the existing promise behavior; done means the affected flow builds and works without ALAssetsLibrary on supported iOS versions.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
public func promise(_ vc: UIImagePickerController, animated: Bool = false, completion: (() -> Void)? = nil) -> Promise<NSData> {
let proxy = UIImagePickerControllerProxy()
vc.delegate = proxy
present(vc, animated: animated, completion: completion)
return proxy.promise.then(on: nil) { info -> Promise<NSData> in
#if swift(>=4.2)
let url = info[.referenceURL] as! URL
#else
let url = info[UIImagePickerControllerReferenceURL] as! URL
#endif
return Promise { seal in
ALAssetsLibrary().asset(for: url, resultBlock: { asset in
let N = Int(asset!.defaultRepresentation().size())
let bytes = UnsafeMutablePointer<UInt8>.allocate(capacity: N)
var error: NSError?
asset!.defaultRepresentation().getBytes(bytes, fromOffset: 0, length: N, error: &error)
if let error = error {
seal.reject(error)
} else {
seal.fulfill(NSData(bytesNoCopy: bytes, length: N))
}
}, failureBlock: { seal.reject($0!) } )
}
}.ensure {
self.dismiss(animated: animated, completion: nil)
}
}
}
- Lingua principale
- Swift
- Stelle
- 14.2k
- Fork
- 1.5k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di mxcl/PromiseKit
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
mxcl/PromiseKit#1362 · 1 commento · 1 reazione ·
-
CocoaPods supportAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
mxcl/PromiseKit#1361 · 6 commenti · 2 reazioni ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
mxcl/PromiseKit#1347 · 5 commenti · 1 reazione ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
mxcl/PromiseKit#1244 · 1 commento · 1 reazione ·
-
None of your spec sources contain a spec satisfying the dependency: `PromiseKit (~> 7.0.0-rc1)`.Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
mxcl/PromiseKit#1242 · 5 commenti ·
Tutte le issue di mxcl/PromiseKit
Issue simili
-
builtin-port enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
cmlarsen/writemorebetter#235 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
callstack/agent-device#3627 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
maziyarpanahi/openmed#4207 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
open-telemetry/opentelemetry-swift#1235 · 1 reazione ·
I maintainer di solito rispondono entro 4 giorni