Я уверен, что это тривиально, если кто-то любезно укажет мне правильное направление, поэтому прошу прощения за глупый вопрос. Однако я искал дни, я не могу понять, что я делаю неправильно.
Сценарий: создайте простое расширение общего доступа, которое получает файл изображения.
Проблема: когда я получаю доступ к вложениям, обработчик никогда не вызывается, хотя я вижу «public.jpg» в itemProvider, но я не вижу, где будут данные?
Что я наделал:
1) defined NSExtensionActivationSupportsImageWithMaxCount = 1 as my only activation rule
2) added CoreMedia framework to the extension
3) added the same group to both app and app extension
4) made sure both have the group (1) in the entitlement
5) made sure both are using a certificate/app id with that group enabled
6) clean and rebuild several times to no avail.
Код:
- (void)didSelectPost {
/
for (NSExtensionItem *item in self.extensionContext.inputItems) {
for (NSItemProvider *itemProvider in item.attachments) {
if ([itemProvider hasItemConformingToTypeIdentifier:(NSString *)kUTTypeImage]) {
I can hit this breakpoint --> [itemProvider loadItemForTypeIdentifier:(NSString *)kUTTypeImage options:nil completionHandler:^(UIImage *image, NSError *error) {
but not this one --> photo = image;
}];
break;
}
}
}
.... and so on and so forth