2015-07-23 19 views
5

Poniższy kod przedstawia przykład mojego dostępu do biblioteki obrazów. Niezależnie od tego, gdzie dzwonię do kodu (widok), nie widzę okna dialogowego uprawnień z telefonu, więc nie mogę pozwolić mojej aplikacji na dostęp do kamery lub biblioteki.Pozwolenie na zrobienie zdjęcia LUB uzyskanie obrazu z biblioteki niewyświetlonej w iOS9 (Xcode 7beta, Swift2)

Również ustawienia prywatności nie wyświetlają mojej aplikacji. jakieś pomysły? Oszalam.

 let imgPicker = UIImagePickerController() 
     imgPicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary 
     imgPicker.modalPresentationStyle = UIModalPresentationStyle.Popover 
     self.presentViewController(imgPicker, animated: true, completion: nil) 

inny sposób próbowałem

  if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.Camera) { 
       let imagePicker:UIImagePickerController = self.imagePickerController 

       imagePicker.allowsEditing  = true 
       imagePicker.sourceType   = UIImagePickerControllerSourceType.Camera 
       imagePicker.cameraCaptureMode = UIImagePickerControllerCameraCaptureMode.Photo 
       imagePicker.cameraDevice  = UIImagePickerControllerCameraDevice.Rear 
       imagePicker.showsCameraControls = true 
       imagePicker.navigationBarHidden = true 
       imagePicker.toolbarHidden  = true 
       imagePicker.delegate = self 

      self.presentViewController(imagePicker, animated: true, completion: nil) 
      } 

Odpowiedz

0

Widocznie ten wydaje się być problem z iOS9. Z jakiegoś powodu okno dialogowe dostępu nie pojawia się. Udało mi się przetestować na iOS8, używając tego samego kodu.

+0

Masz na to jeszcze poprawkę? – jonypz

+0

Nie. Na razie wróciłem do iOS 8. Nie ma czasu na bałagan z tymi problemami. Przepraszam. – DirkLX

+0

@DirkLX Czy otrzymałeś już poprawkę? – user2363025

2

Musisz ustawić nową parę wartości Info.plist, tak samo jak ciąg znaków dla usług lokalizacyjnych byłoby systemów iOS 8:

Wystarczy ustawić swój opis ciąg dla nich.

Info.plist

+0

To nie jest rozwiązanie. – durazno

2

Sprawdź Info.plist.

jeśli "Bundle Wyświetlana nazwa" ustaw jako nic,

Na iOS 8.1 będzie wyskakujące okno uprawnień jak ten

"" chcieliby uzyskać dostęp do zdjęć

ale w iOS 9, w ogóle nie ma pozwolenia na wyskakujące okienko.

Również ustawienie braku uprawnień, w Ustawienia> Prywatność> Zdjęcia> Nazwa Twojej aplikacji.

Aby rozwiązać ten problem,

Usuń "nazwa wyświetlana Bundle" w Info.plist.

+0

Moja nazwa nie miała nazwy wyświetlania Paczkomatu i ma ten problem. Co robić? – durazno

+0

Nie mogę komentować, jeśli usunięcie wszystkich razem jest właściwą metodą, ALE właśnie wypełniłem obszar "ciąg" z rzeczywistą nazwą aplikacji, działa. –

+0

To zdecydowanie jest zła odpowiedź. Poprawną odpowiedzią jest to, co powiedział @longbow, musisz wypełnić odpowiednie ciągi info.plist. – barndog