Swift Facebook图像选择器

在一个星期一的早晨,您的老板给您一个注释:“嘿,如果您添加一种简单的方法让用户从他的Facebook帐户中选择他的个人资料图片,该怎么办? 不到两个小时,就可以使用Facebook SDK做到这一点。”

很好! 让我们看一下惊人的Facebook文档,他们可能做了一个本机图像选择器,可以记录用户,检索用户的相册并显示每个相册的图片。

事实证明,没有使用原生iOS Facebook SDK进行优雅的Facebook图像选择器的简便方法。

您将需要处理Facebook登录,拒绝照片权限,从Graph API解析用户的相册,加载相册封面,解析相册的图片,加载和缓存图片。 真是一个痛苦的任务!

就像您的老板所说的,所有这些都在不到1或2个小时内完成。

有解决办法 ! 🎉

有几个网站和旧图书馆允许这样做。 仅这始终是旧的Swift版本或旧的Facebook SDK。 这就是为什么我决定制作自己的Swift Facebook选择器“ GBHFacebookImagePicker”并根据MIT许可将其发布给OpenSource社区的原因。

主要特点

选择器提供了一种非常简单的方法来向用户询问Facebook的照片许可权,并显示所有Facebook的帐户相册。 显示相册图片时,用户可以轻松选择其中的一张,然后选择器以最高质量下载所选图片。

选择器还提供了一种翻译弹出窗口的简单方法。

安装

GBHFacebookImagePicker可通过CocoaPods获得。 要安装它,只需将以下行添加到您的Podfile中:

 豆荚“ GBHFacebookImagePicker” 

用法🗝

  • 您需要正确设置您的应用程序才能与Facebook一起使用:https://developers.facebook.com/docs/ios/getting-started
  • 导入选择器:
import GBHFacebookImagePicker 
  • 实现GBHFacebookImagePickerDelegate协议:
 // MARK: - GBHFacebookImagePicker Protocol 
 func facebookImagePicker(imagePicker: UIViewController, didSelectImage image: UIImage?, WithUrl url: String) { 
// Do whatever you whant with the picked image or url ...
}
 func facebookImagePicker(imagePicker: UIViewController, didFailWithError error: Error?) { 
print(error.debugDescription)
}
 func facebookImagePicker(didCancelled imagePicker: UIViewController) { 
print("Cancelled Facebook Album picker")
}
  • 显示选择器:
 let picker = GBHFacebookImagePicker() 
picker.presentFacebookAlbumImagePicker(from: self, delegate: self)

应用领域

一些应用程序已经在使用该选择器,例如:

  • 巨魔发生器
  • 吉拉夫

那你呢? 如果您的应用程序也使用此选择器,请随时与我联系或以名称with发表评论

下一步是什么 ? 🚀

定制将是下一个重点。 具有字体,颜色或边框的自定义。

有人要求我提供多个选择功能,这可能也是下一个功能之一。

欢迎在Github上做出贡献并提出请求。

如果您❤️️,请随时单击绿色的波纹管👇🏽,或直接在Github❤️️上★

如果您不❤️️告诉我原因,我很乐意讨论

弗洛里安(Florian G.)— contact@floriangabach.fr