zoukankan      html  css  js  c++  java
  • Share Extension

    https://my.oschina.net/vimfung/blog/707448

    http://blog.csdn.net/chengwuli125/article/details/39521213

    NSItemProvider就是附件,可能是图片、视频、网址的NSURL。例如图片:file:///var/mobile/Media/PhotoData/OutgoingTemp/83C2CA24-9774-479B-8507-B062C1D3F459/IMG_0101.JPG

     

    遇到的坑:当选择多个图片(附件)时,在viewDidLoad,先保存到NSUserDefaults,

    - (void)viewDidLoad

    {

        [superviewDidLoad];

        NSMutableArray *inputItems = [NSMutableArrayarray];

        self.itemArray = [NSMutableArrayarray];

        NSUserDefaults *groupUS = [[NSUserDefaultsalloc] initWithSuiteName:kAppGroupId];

        __block NSString *ident = @"";

        

        [self.extensionContext.inputItemsenumerateObjectsUsingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {

            NSExtensionItem *exitem = obj;

            [exitem.attachments enumerateObjectsUsingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {

                NSItemProvider *itemProvider = obj;

                if ([itemProvider hasItemConformingToTypeIdentifier:@"public.png"])

                {

                    ident = @"public.png";

                    

                }elseif ([itemProvider hasItemConformingToTypeIdentifier:@"public.jpeg"])

                {

                    ident = @"public.jpeg";

                }

                [itemProvider loadItemForTypeIdentifier:ident options:nil completionHandler:^(id<NSSecureCoding>  _Nullable item, NSError * _Null_unspecified error) {

                    if ([(NSObject *)item isKindOfClass:[NSURL class]]) {

                        NSURL *url = (NSURL *)item;

                        NSData *data = [NSData dataWithContentsOfURL:url];

                        [inputItems addObject:data];

                        [self.itemArray addObject:exitem];

                        [groupUS setObject:inputItems forKey:@"inputItems"];

     

                    }

                    

                }];

                

            }];

            

        }];

    }

    提审的扩展和容器程序的Build Version要保持一致,否则在上传审核包的时候会提示警告,导致程序无法正常提审。

     

     

     

    System-Declared Uniform Type Identifiers

    https://developer.apple.com/library/content/documentation/Miscellaneous/Reference/UTIRef/Articles/System-DeclaredUniformTypeIdentifiers.html#//apple_ref/doc/uid/TP40009259-SW1

     

  • 相关阅读:
    第一周软件测试
    第八周
    第七
    安卓第六周作业
    安卓第五周
    第四周作业
    Jsp第十次作业
    Jsp第九次作业(带验证码的email)
    Jsp第八次作业
    Jsp第七次作业email
  • 原文地址:https://www.cnblogs.com/dengchaojie/p/7846191.html
Copyright © 2011-2022 走看看