InstagramImagePicker 1.1.7

InstagramImagePicker 1.1.7

测试测试
Lang语言 Obj-CObjective C
许可证 MIT
Released最新发布2016年5月

Deon BothaKostas KarayannisJaime Landazuri维护。



iOS Instagram Image Picker

一个Instagram图片选择器,为用户提供从其Instagram账户中选择照片的简单界面。它提供了一个与iOS SDK的UIImagePickerController相匹配的图片选择器界面。

它会在必要时与Instagram进行所有认证。如果需要,它将自动更新认证令牌或提示用户重新授权应用程序。

视频预览

Preview

要求

  • Xcode 6和iOS SDK 7
  • iOS 7.0+目标部署

安装

使用

您需要正确设置应用程序,以便通过在此处注册一个新的Instagram应用程序与Instagram一起工作:[https://instagram.com/developer/](https://instagram.com/developer/)。对于重定向URI,请使用类似`your-app-scheme://instagram-callback`的值。

要启动Instagram Image Picker

#import <OLInstagramImagePickerController.h>

OLInstagramImagePickerController *imagePicker = [[OLInstagramImagePickerController alloc] initWithClientId:@"YOUR_CLIENT_ID" secret:@"YOUR_CLIENT_SECRET" redirectURI:@"YOUR-APP-SCHEME://instagram-callback"];
imagePicker.delegate = self;
[self presentViewController:imagePicker animated:YES completion:nil];

实现OLInstagramImagePickerControllerDelegate协议

- (void)instagramImagePicker:(OLInstagramImagePickerController *)imagePicker didFinishPickingImages:(NSArray/*<OLInstagramImage>*/ *)images {
    [self dismissViewControllerAnimated:YES completion:nil];
    // do something with the OLInstagramImage objects
}

- (void)instagramImagePickerDidCancelPickingImages:(OLInstagramImagePickerController *)imagePicker {
    [self dismissViewControllerAnimated:YES completion:nil];
}

- (void)instagramImagePicker:(OLInstagramImagePickerController *)imagePicker didFailWithError:(NSError *)error {
    [self dismissViewControllerAnimated:YES completion:nil];
    // do something sensible with the error
}

App Transport Security

Xcode 7和iOS 9包含一些新的安全功能。为了连接到Instagram,您需要在项目的info plist文件中添加一些额外的异常(除了您的项目可能需要的那些)。我们需要为Instagram的CDN添加向前保密异常。以下是要复制到您的应用程序info plist中,其中包括Kite需要的所有内容

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>akamaihd.net</key>
            <dict>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
            <key>facebook.net</key>
            <dict>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
      <key>facebook.com</key>
            <dict>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
            <key>instagram.com</key>
            <dict>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
            <key>fbcdn.net</key>
            <dict>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
            <key>cdninstagram.com</key>
            <dict>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
        </dict>
    </dict>

设置最大选择数量

限制要选择的资源数量。

- (BOOL)instagramImagePicker:(OLInstagramImagePickerController *)imagePicker shouldSelectImage:(OLInstagramImage *)image
{
    // Allow 10 assets to be picked
    return (imagePicker.selected.count < 10);
}

示例应用程序

项目包含一个示例应用程序,以突出显示库的用法。另请参阅以下iOS应用程序中的库的用法

许可证

本项目采用MIT许可证。有关更多信息,请参阅许可证(LICENSE)文件。