GBHFacebookImagePicker 6.0.0

GBHFacebookImagePicker 6.0.0

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布时间最后发布2021年5月
SPM支持SPM

Maintained by Florian Gabach.



 
依赖项
FBSDKCoreKit~> 9.3.0
FBSDKLoginKit~> 9.3.0
 

  • By
  • Florian Gabach

FacebookImagePicker

Cocoapods version Cocoapods licence Cocoapods plateform Prs welcome

功能特性 • 安装方式 • 使用方法 • 国际化翻译 • 许可协议

GBHFacebookImagePicker 是 Facebook 的 Swift 编写的相册照片选择器,旨在提供一个简单的方法来选择照片到 Facebook 账户。选择器提供了一个类似于原生 iOS 相册的简单界面。这个选择器负责所有必要的身份验证(从网络或使用原生的 Facebook 应用程序)。如果在登录时无法接受照片的权限,选择器会提示请求其他权限。

截图/演示

Preview

功能特性

  • 使用 Facebook SDK 登录并显示用户的相册或标记的相片
  • 显示每个相册的图片
  • 处理拒绝 Facebook 照片权限
  • 在一个相册中实现多选
  • 全选

示例

在您的终端中

pod try GBHFacebookImagePicker

或者手动运行示例项目,首先克隆仓库,然后从Example目录运行 pod install

别忘了在plist文件中替换当前Facebook应用的ID为你的ID(打开方式 > 源代码)。像这样:

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>CFBundleURLSchemes</key>
            <array>
                <string>fb<YOUR_FACEBOOK_APP_ID></string>
            </array>
    </dict>
</array>
<key>FacebookAppID</key>
<string><YOUR_FACEBOOK_APP_ID></string>

以防万一,对于公开应用(可在AppStore中使用),您需要将您的Facebook应用发送到审核,以便获得用户的照片权限。

用法

import GBHFacebookImagePicker
  • 然后,实现 GBHFacebookImagePickerDelegate 协议
// MARK: - GBHFacebookImagePicker Protocol

func facebookImagePicker(imagePicker: UIViewController,
                         successImageModels: [GBHFacebookImage],
                         errorImageModels: [GBHFacebookImage],
                         errors: [Error?]) {
    // Append selected image(s)
    // Do what you want with selected image 
    self.imageModels.append(contentsOf: successImageModels)
}

func facebookImagePicker(imagePicker: UIViewController, didFailWithError error: Error?) {
    print("Cancelled Facebook Album picker with error")
    print(error.debugDescription)
}

// Optional
func facebookImagePicker(didCancelled imagePicker: UIViewController) {
    print("Cancelled Facebook Album picker")
}

// Optional
func facebookImagePickerDismissed() {
    print("Picker dismissed")
}

imageModel包含

public class FacebookImage {
    public var image: UIImage? // The image, not nil only if image is selected
    public var normalSizeUrl: String? // Normal size picture url
    public var fullSizeUrl: String? // Full size source picture url
    public var imageId: String? // Picture id
}
  • 显示选择器
let picker = FacebookImagePicker() 
picker.presentFacebookAlbumImagePicker(from: self, delegate: self) 

自定义

您可以应用一些自定义设置。为此,你可以使用 FacebookPickerConfig 结构

其他信息

  • 关于标记的照片:标记的照片将显示在一个名为“照片中的你”的相册中(默认隐藏,见自定义部分显示),您可以在设置中更改此默认名称。标记相册的封面是Facebook账户的头像,这些头像是通过图形API的特殊调用检索到的。

翻译

目前FacebookImagePicker是用英语编写的。如果您需要对权限弹出窗口(或任何其他内容)进行翻译,只需在您的本地化文件中添加此行即可

"Pictures" = "<your_translation>";
"Oups" = "<your_translation>";
"You need to allow photo's permission." =  "<your_translation>";
"Allow" = "<your_translation>";
"Close" = "<your_translation>";
"Album(s)" = "<your_translation>";
"Photos of You" = "<your_translation>";
""No picture(s) in this album." = "<your_translation>";"

要求

  • Xcode 11.4
  • 支持iOS 9.0及以上版本的目标部署
  • FBSDKCoreKit, FBSDKLoginKit (v5.0需要>= 7.0)
  • Facebook应用,请参阅使用说明以获取解释
  • Swift 3, 4, 4.2或5.1项目

安装

FacebookImagePicker可以通过CocoaPods获取。要安装它,只需在Podfile中添加以下行

pod "GBHFacebookImagePicker"

pod "GBHFacebookImagePicker", '~> 2.4' # For swift 4.0

pod "GBHFacebookImagePicker", '~> 1.3.1' # For Swift 3.1

通讯

  • 如果您需要帮助,打开一个问题。
  • 如果您发现了错误,打开一个问题。
  • 如果您有
    功能需求,打开一个问题。
  • 如果您
    希望做出贡献,提交一个pull request并阅读贡献文件

作者

弗洛里安·加巴赫,[email protected]

许可

FacebookImagePicker在MIT许可下可用。

如果您的应用程序使用此选择器,请考虑在Credits/About部分添加许可证。您可以使用此库来完成此操作。