iOS: можно ли автоматически вернуться в приложение после публикации фотографии по почте в расширении для общего доступа? - PullRequest
0 голосов
/ 04 июля 2019

Я пытаюсь снова зайти в свое приложение после нажатия на сообщение из фотогалереи, выбрав мое приложение после выбора картинки:

enter image description here

Я пытаюсь этот код, но ничего не происходит.(Я уточняю, что я получаю картинку, если я вхожу в приложение, но я бы хотел этого избежать).

Мне нужен тот же принцип «Копировать в iBooks», который автоматически открывает iBooks.

enter image description here

В ShareViewController.h:

- (void)didSelectPost {

    for (NSItemProvider* itemProvider in ((NSExtensionItem*)self.extensionContext.inputItems[0]).attachments ) {

        if([itemProvider hasItemConformingToTypeIdentifier:@"public.png"]) {
            NSLog(@"itemprovider = %@", itemProvider);

            [itemProvider loadItemForTypeIdentifier:@"public.png" options:nil completionHandler: ^(id<NSSecureCoding> item, NSError *error) {

                NSData *imgData;
                if([(NSObject*)item isKindOfClass:[NSURL class]]) {
                    imgData = [NSData dataWithContentsOfURL:(NSURL*)item];
                }
                if([(NSObject*)item isKindOfClass:[UIImage class]]) {
                    imgData = UIImagePNGRepresentation((UIImage*)item);
                }

                NSDictionary *dict = @{
                                       @"imgData" : imgData,
                                       @"name" : self.contentText
                                       };
                NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.NewTelApps.GoFact"];
                [defaults setObject:dict forKey:@"img"];                              
                [defaults synchronize];
                [self.extensionContext completeRequestReturningItems:@[dict] completionHandler:nil];
                [self.extensionContext openURL:[NSURL URLWithString:@"Go2Fact://"]
                             completionHandler:nil];
            }];
        }
    }
}

Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...