私は共有アプリの拡張機能を作成しようとしています上の共有写真の能力上のアプリケーションのリストに表示されると、このソースからのチュートリアルに従っていません)シミュレータ上では、期待どおりに動作します。 iOS 9.3.3を搭載した私のiPhone 5sで。共有拡張がiPhone
コンテナアプリケーションを最初にインストールしてから、Xcodeが「実行するアプリケーションを選択する」と尋ねたときに写真アプリを選択して拡張機能を実行します。拡張子が実行されている間、私は写真を開いたときに
は今、次のエラーが表示されます
MobileSlideShow[3500:589624] *** error reading settings archive file: <ISRootSettings:
/var/mobile/Documents/com.apple.mobileslideshow.settings/ISRootSettings_10.plist>
私は共有]ボタンをタップすると今、私のコンテナアプリが共有できるアプリのリストには表示されません。画像。
EDIT: 私はいくつかのコードを共有しています:
ShareViewController.m
@implementation ShareViewController
- (BOOL)isContentValid {
// Do validation of contentText and/or NSExtensionContext attachments here
return YES;
}
- (void)didSelectPost {
for (NSItemProvider* itemProvider in ((NSExtensionItem*)self.extensionContext.inputItems[0]).attachments) {
if([itemProvider hasItemConformingToTypeIdentifier:@"public.jpeg"]) {
NSLog(@"itemprovider = %@", itemProvider);
[itemProvider loadItemForTypeIdentifier:@"public.jpeg" 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.iosApp.testSharing"];
[defaults setObject:dict forKey:@"img"];
[defaults synchronize];
}];
}
}
}
@end
ViewController.m
@implementation ViewController
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.iosApp.testSharing"];
NSDictionary *dict = [defaults valueForKey:@"img"];
if (dict) {
NSData *imgData = [dict valueForKey:@"imgData"];
UIImage *image = [UIImage imageWithData:imgData];
[_shareImageView setImage:image];
_shareImageNameLabel.text = [dict valueForKey:@"name"];
[defaults removeObjectForKey:@"img"];
}
}
@end
関連するコードを共有できますか? – ystack