2015-07-30 2 views
0

Я работал над приложением, которое обращается к библиотеке фотографий пользователей с помощью метода класса PHAssets. Как можно будет снова открыть диалоговое окно «Доступ к вашим фотографиям», как только пользователь выберет его параметры «Разрешить» или «Не разрешать». Если пользователь выбирает «Разрешить», как мы можем получать данные одновременно. Во-вторых, как мы можем обрабатывать параметр «Не разрешать» в Swift. Вот код:Как обрабатывать параметр «Не разрешать» в диалоговом окне разрешений в Swift

переопределение функ viewDidLoad() { super.viewDidLoad()

// Do any additional setup after loading the view, typically from a nib. 

     let images = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image, options: nil) 
     let targetSize: CGSize = CGSize(width: 350, height: 480)// target size 
     let contentMode: PHImageContentMode = PHImageContentMode.AspectFill // content mode 
     images.enumerateObjectsUsingBlock { 
     object, index, stop in 

     let options = PHImageRequestOptions() 
     options.synchronous = true 
     options.deliveryMode = .HighQualityFormat 


      PHImageManager.defaultManager().requestImageForAsset(object as! PHAsset, targetSize: targetSize, contentMode: contentMode, options: options) { 
       image, info in 
       self.myCol.append(image) 

      } 
     } 
     ImageCol.store = myCol 



} 

ответ

0
  1. Вы не можете показать «Доступ к фото» Диалог разрешения снова. После показа его можно изменить только в настройках iOS.
  2. Разрешить выбор: С PHImageManager.defaultManager().requestImageForAsset вы можете получить доступ к фотографиям сразу.
  3. Не разрешать опцию: Если пользователь позволит технику его подводит, вы должны попросить его, чтобы при настройках прошивки: игровой UIApplication.sharedApplication().openURL(NSURL(string: UIApplicationOpenSettingsURLString))
  4. Проверить статус разрешения: Determine if the access to photo library is set or not - PHPhotoLibrary (iOS 8)
+0

На самом деле я не в состоянии справиться с выбранной опцией , Как и выбранный пользователем Ok, поэтому мой код должен выполнить и заполнить массив. Но он заполняет данные при перезагрузке приложения не в одно и то же время. –

+0

Попробуйте выполнить: https://developer.apple.com/library/ios/samplecode/UsingPhotosFramework/Introduction/Intro.html#//apple_ref/doc/uid/ TP40014575-Intro-DontLinkElementID_2 – Klevison