質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Q&A

解決済

1回答

2962閲覧

UIDocumentInteractionControllerを使ったTwitter投稿について

TakeOne

総合スコア6299

Objective-C

Objective-Cはオブジェクト指向型のプログラミング言語のひとつです。C言語をベースにSmalltalkが取り入れられています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

2グッド

0クリップ

投稿2015/11/03 17:30

編集2015/11/04 00:21

UIDocumentInteractionControllerを使って写真をTwitterに投稿できるアプリを作っているのですが、公式Twitterアプリを最新のv6.39にアップデートしたら、ツイートメッセージに"file:///private/var/mobile/Containers/Data/Application/〜"といったアプリ内部の写真保存ファイルパスが勝手に埋め込まれるようになってしまいました。

(ツイート画面)
イメージ説明

試しに新しいプロジェクトを作り、ナビゲーションコントローラー配下のビューコントローラーを以下のように実装し、右上のボタンをタップして表示される送信メニューでTwitterアイコンを選択して投稿したところ、やはりツイート内容に内部ファイル名が埋め込まれてしまいます。

ObjectiveC

1#import "ViewController.h" 2 3@interface ViewController () <UIDocumentInteractionControllerDelegate> 4@property (strong, nonatomic) UIDocumentInteractionController *docIC; 5@end 6 7@implementation ViewController 8 9- (void)viewDidLoad { 10 [super viewDidLoad]; 11 self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(openMenu:)]; 12} 13 14- (void)openMenu:(UIBarButtonItem *)sender { 15 // image.pngという画像をプロジェクトにバンドルしてください。 16 UIImage *sendImage = [UIImage imageNamed:@"image.png"]; 17 NSData *sendData = UIImagePNGRepresentation(sendImage); 18 NSString *sendDataPathName = [NSTemporaryDirectory() stringByAppendingPathComponent:@"image.png"]; 19 BOOL success = [sendData writeToFile:sendDataPathName atomically:NO]; 20 if (success) { 21 NSURL *sendURL = [NSURL fileURLWithPath:sendDataPathName]; 22 _docIC = [UIDocumentInteractionController interactionControllerWithURL:sendURL]; 23 [_docIC presentOptionsMenuFromBarButtonItem:sender animated:YES]; 24 } else { 25 NSLog(@"writeToFile error"); 26 } 27} 28@end 29

ちなみに、公式Twitterアプリを削除して、同じテストアプリでもう一度ツイートすると、今度は内部ファイル名が埋め込まれず正常に投稿できます。(公式Twitterアプリを削除しても、TwitterアカウントはiPhoneの設定に登録されているので、普通に投稿できます。)

同じ現象を確認されている方はおられますか? 他の方も同じ現象を確認されているのであれば、やはり公式Twitterアプリの問題なのかなと思いますが、iOS用公式Twitterアプリの開発担当にこの現象を報告するにはどこへ連絡すればよいでしょうか? 問い合わせや連絡が可能なURL等をどなたかご存知でしたら教えてください(もちろん英語サイトでもかまいません)。

よろしくお願いします。

YS_kuro👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

Adobe Photo Shop Express(PS Express)、aillis(旧LINEカメラ)、LINE brush等、複数のアプリで同様の現象になっていることを確認しました。

また、Twitter developer forumを見つけたので、そちらへトピックを作り報告しておきました。
Open-in menu embeds url string forcibly

投稿2015/11/10 04:05

編集2015/11/10 04:08
TakeOne

総合スコア6299

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問