2017-10-04 71 views
4

我的代码在iOS 10上工作正常,但在更新到iOS 11后似乎没有任何工作。iOS中的Photopicker&FB GrapSharer问题11

这是我的代码在Facebook上分享视频:

internal func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]){ 
     self.dismiss(animated: true, completion: {() -> Void in 

     }) 
     guard let videoURL = info[UIImagePickerControllerReferenceURL] as? NSURL else { 
      return // No video selected. 
     } 
     print(videoURL) 
     let video = Video(url: videoURL as URL) 
     var content = VideoShareContent(video: video) 
     content.hashtag = Hashtag.init("#Ojas") 

     if FBSDKAccessToken.current() != nil{ 
      if FBSDKAccessToken.current().hasGranted("publish_actions") { 
       print("Have permission") 
       let sharer = GraphSharer(content: content) 
       sharer.failsOnInvalidData = true 
       sharer.message = "From #Ojas App" 
       sharer.completion = { result in 
        // Handle share results 
        print("Share results : \(result)") 
       } 

       do{ 
        try sharer.share() 
        //try shareDialog.show() 
       }catch{ 
        print("Facebook share error") 
       } 

     } 

    } 

但没有什么工作,因为它以前的工作。 这里是登录我看到ImagePicker:

[discovery] errors encountered while discovering extensions: Error Domain=PlugInKit Code=13 "query cancelled" UserInfo={NSLocalizedDescription=query cancelled} 

而且现在有一个警告,指出"app_name" wants to use "facebook.com" to Sign in。 我认为的链接: PhotoPicker discovery error: Error Domain=PlugInKit Code=13

任何想法为什么一切停止在iOS 11的工作。任何帮助,将不胜感激。

回答

0

好的,这是关于询问我在应用程序开始时已经询问的权限。我仍然需要再问一次,我不知道为什么,但它工作。

PHPhotoLibrary.requestAuthorization({ (status: PHAuthorizationStatus) -> Void in 
      () 

      if PHPhotoLibrary.authorizationStatus() == PHAuthorizationStatus.authorized { 
       print("creating 2") 
       // Impelement UiImagepicker method 
      } 

     }) 
+0

没有为我做伎俩。不知何故。我现在真的用完了选项 – alexdd55

+0

哪一个是你的问题?我希望您在.plist中添加这些密钥以访问相册中的任何内容:隐私 - 照片库使用说明和隐私 - 照片库添加使用说明。两个都。 @ alexdd55 –