[iOS][Twitter] Social.frameworkを利用したツイートのクライアントアプリ名「via iOS」表記について

iOS アプリ開発で、Social.frameworkを利用した Twitter のツイートのクライアントアプリ名 “via iOS” 表記について、調査したことをまとめます。

まず、”via iOS” の部分については下記のような仕様みたいです。

Social.framework (since iOS6) / Twitter Framework (iOS5) を利用する場合

Social.framework などを利用して、iOS標準機能でツイートした場合、”via iOS” の部分は変更できません。

Release後は、アプリ名と iTunes Store の URL が自動で付与されるみたいです。

開発版やAdHoc版では、”via iOS” という表記のままのようです。

あなたが実際にこれを設定することはできないようです。

https://dev.twitter.com/issues/39 によると、それらはアップルが保有するデータベース内のアプリ名に基づいて、一致しています。すでに同じ名前の登録、Twitterのアプリケーションを持つことはできません。

また、これはAdHocsまたはテストアプリのみ公開アプリで動作するように得ることができないと思われます。

Looks like you can’t actually set this.

According to: https://dev.twitter.com/issues/39 They match based on the app name in Apple’s database. You can’t already have a registered Twitter Application with the same name.

Also, seems that you can’t get this to work with AdHocs or test apps, only published apps.

[引用]:How can I sign tweets containing my custom "via" with the iOS 5 Twitter framework? – Stack Overflow

API を利用する場合

API経由でTwitterにログインして、ツイートする場合、”via iOS” の部分は自由に設定できるようです。

例えば、アプリを iOS だけでなく、Android 版もリリースしている場合、”via xxx”のリンクは iTunes Store の URL ではなく、アプリのランディングページのURLの方を設定しておきたいですよね。

まとめ

■ iOS標準機能でTweet
[メリット]
・端末に設定したTwitterアカウントでそのままツイートできる
(ログインする手間が掛からない)

[デメリット]
・「via xxx」のURLが必ず iTunes Store のURL
・Android ユーザーがアプリをDLしにくい

■ API経由でTweet
[メリット]
・「via xxx」のURLを指定できる

[デメリット]
・初回ツイート時にログインする必要がある

以上です。