- [SDK]iPhoneアプリ開発初心者質問箱44[touch][iPad] [転載禁止]©2ch.net
934 :名称未設定[sage]:2015/11/03(火) 00:55:01.29 ID:aPvBDLJZ0 - >>929
about あたりじゃね。もしくはこの中のいずれかにあるだろう。ないかもしれないが https://developers.facebook.com/docs/graph-api/reference/user
|
- [SDK]iPhoneアプリ開発初心者質問箱44[touch][iPad] [転載禁止]©2ch.net
935 :名称未設定[sage]:2015/11/03(火) 02:46:14.57 ID:aPvBDLJZ0 - >>934,929
bio だった
|
- [SDK]iPhoneアプリ開発初心者質問箱44[touch][iPad] [転載禁止]©2ch.net
937 :名称未設定[sage]:2015/11/03(火) 21:10:44.04 ID:aPvBDLJZ0 - >>936
metadata に 適切な値のOrientation も入れる saveImage が自分のアプリで(UIGraphicsBeginImageContextWithOptionsでオフスクリーンで)0から作ったのでないのであれば、オリジナルの値を オリジナルが UIImagePicker からなら、info[UIImagePickerControllerMediaMetadata][@"Orientation"] metadata: ではなく orientation: であれば UIImage imageOrientation の値のまま/をキャストすればいいみたいだけどね iOS 7 以下をサポートしなくてもいいなら Photo Library をだろうな
|
- [SDK]iPhoneアプリ開発初心者質問箱44[touch][iPad] [転載禁止]©2ch.net
939 :名称未設定[sage]:2015/11/03(火) 22:37:17.09 ID:aPvBDLJZ0 - >>938
なんのエラーが起きているのか一瞥ではわからんなあ info[UIImagePickerControllerMediaMetadata][@"Orientation"]=[NSNumber numberWithInt:UIImageOrientationUp]; がなら、そりゃそうだわな。info[UIImagePickerControllerMediaMetadata]はMutableじゃないんだろうだから そもそもその一行(およびその後付け加えたの)が意味わからない。なんで定数設定しているの??>>936にだと、 ALAssetsLibrary *lib = [[ALAssetsLibrary alloc] init]; NSMutableDictionary *metadata = [appDelegate.metaData mutableCopy]; id orientation = info[UIImagePickerControllerMediaMetadata][@"Orientation]; if(orienation != nil) metadata[@"Orientation] = orienation; [lib writeImageToSavedPhotosAlbum:self.saveImage.CGImage metadata:metadata completionBlock:^(NSURL* url, NSError* error){ NSLog(@"Saved: %@<%@>", url, error); }]; だけでいいんじゃね。オリジナルのその他のmetadataも生かしたいなら、 id orientation = info[UIImagePickerControllerMediaMetadata][@"Orientation]; if(orienation != nil) metadata[@"Orientation] = orienation; を、 [metadata addEntriesFromDictionary:info[UIImagePickerControllerMediaMetadata]]; に、とか
|
- [SDK]iPhoneアプリ開発初心者質問箱44[touch][iPad] [転載禁止]©2ch.net
940 :名称未設定[sage]:2015/11/03(火) 22:56:17.12 ID:aPvBDLJZ0 - >>938
ああ、撮影直後に保存とその後なんかした後にまた別に保存か 撮影直後にただ保存したければ、そんななんやかんやすることないだろう - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { NSDictionary *metadata = info[UIImagePickerControllerMediaMetadata]; UIImage *original = info[UIImagePickerControllerOriginalImage]; ALAssetsLibrary *lib = [[ALAssetsLibrary alloc] init]; [lib writeImageToSavedPhotosAlbum:original.CGImage metadata:metadata completionBlock:nil]; appDelegate.metaData = metadata; } その後に appDelegate.metaData をなんやかんやするならなんやかんやすればいいんじゃね NSMutableDictionary *metadata = [appDelegate.metaData mutableCopy]; metadata[@"Hoge"] = @(1234); appDelegate.metaData = [metadata copy]; とか もろもろ終わって保存は>>936のままでいいんじゃね
|
- [SDK]iPhoneアプリ開発初心者質問箱44[touch][iPad] [転載禁止]©2ch.net
941 :名称未設定[sage]:2015/11/03(火) 23:28:14.39 ID:aPvBDLJZ0 - >>940,938
ああ、メタデータだけはオリジナルのをベースにして、イメージはアプリで再作成(イメージになんかスタンプ付けたりして?)なら、オリジナルのOrientation は逆に邪魔だか消してしまうのがいい NSMutableDictionary *metadata = [appDelegate.metaData mutableCopy]; [metadata removeObjectForKey:@"Orientation"]; appDelegate.metaData = [metadata copy]; アプリで再作成されたイメージは システムデフォルトのOrientation で、writeImageSavedPhotosAlbum: はメタデータに Orientation がなければ デフォルトのOrientation を加えるようだから
|