2016-06-17 18 views
11

Fotoğraf kitaplığı için yetkilendirme isteğinde bulunduğum her seferinde simülatörde çalışırken uygulamam kilitleniyor. Ben didFinishLaunchingWithOptions benim appDelegate aşağıdaki kodu kullanıyorum:xcode 8 PHPhotoLibrary.requestYanlışlığa neden olan yetkisizlik

if PHPhotoLibrary.authorizationStatus() != PHAuthorizationStatus.authorized { 
    PHPhotoLibrary.requestAuthorization({ (status: PHAuthorizationStatus) in 

    }) 
} 

hızlı 3.0 ile Xcode 8 beta kullanma.

cevap

23

Testlerimde, iOS 10, gerçek bir cihazda çalışmıyorsanız faydalı hata mesajlarını çıkarmayı sevmez. Bu özel durumda, muhtemelen Info.plist dosyanıza NSPhotoLibraryUsageDescription anahtarını vermediniz ve bu değer, yetkilendirme isteğinde bulunmadan önce sağlanmalıdır.

+0

Cevabınız için teşekkür ederiz. Plist dosyasını değiştirmeye fazla zaman harcamadım. Artı'ya basmak ve manuel olarak NSPhotoLibraryUsageDescription yazıp String'e yazmayı seçmek kadar basit mi? Bu da sorunların devam etmesine neden olacak mı? Bu özelliğin bir sistem özelliği olduğunu ve sistem uyarısı kabulünden başka bir uygulamada değiştirilemediğini düşündüm. – alionthego

+2

Söylediğin adımları yap, sonra sağdaki kutuya bir metin gir: "Fotoğraflarını okumak zorundayız, böylece bazı glerbleri kırabiliriz." Bu, kullanıcıya neden erişmek istediğinizi ve iOS'taki standart prosedürü açıklayacaktır. [Şu anda iOS 10'da bir kitap yazıyorum] (https://gumroad.com/l/ios10) ve ilk bölüm tam olarak bu prosedürü kapsamaktadır. – TwoStraws

+0

Bu harika. Mükemmel çalışıyor. Yardımlarınız için çok teşekkürler. – alionthego

2

Cihazdaki fotoğraflara erişime izin vermelisiniz. Info.plist'inize aşağıdaki anahtar ve dizeyi ekleyin. Özellik listesi görünümündeki otomatik tamamlama, "Gizlilik - Fotoğraf Kitaplığı Kullanım Açıklaması" dır. Veya kaynak kod görünümünde info.plist dosyasını açın ve aşağıdakileri ekleyin:

<key>NSPhotoLibraryUsageDescription</key> 
<string>We need access to your photos.</string> 
İlgili konular