Unity で作成したアプリケーションから Twitter や Facebook へ共有を行う時は SocialConnector というプラグインを利用するのが便利だ。以前から利用していたが気がついたらバージョンが上がって仕様が一気に変わったのでメモしておこう。
anchan828/social-connector · GitHubプラグインのインストール
上記 github より zip をダウンロードするか clone してきたらある plugins ディレクトリ内を Unity 上に同じように配置するだけです。
iOS で利用する場合は iOS のプロジェクトに Line のアイコン画像を入れる必要があります。
使い方
バージョンによって仕様が違うのでそれぞれ記述しよう。
以前のバージョン(0.2.x)
以前のバージョンである 0.2 系列では、共有を行うメソッドを実行する際に共有を行いたいサービスを指定する必要があります。
このバージョンも github よりダウンロード可能です。
Release PostMessageのAPIが存在する最終バージョン · anchan828/social-connector · GitHubSNS へ共有する際は以下のように記述します。
SocialConnector.PostMessage(SocialConnector.ServiceType.Twitter, "text");
SocialConnector.PostMessage(SocialConnector.ServiceType.Twitter, "text", "https://example.com");
SocialConnector.PostMessage(SocialConnector.ServiceType.Twitter, "text", "https://example.com", imagePath);
引数はそれぞれ以下のようになります
- サービスの種別(Twitter, Facebook, Line)
- テキスト
- URL(オプション)
- 画像のパス(オプション)
Android で Twitter へ連携するところは Twitter 公式のクライアントを直打ちしていたので、自分は Android で Twitter へ投稿する場合のみ以下の記事のように Application.OpenURL を使用しています。(試してないけど多分画像送れなくなる)
Unity から Twitter でつぶやく現在のバージョン(0.3.1)
一方現在のバージョンである 0.3.1 ではサービス毎の指定が無くなり Android ではテキストをうけとれるアプリ全体を, iOS では共有可能なアプリの一覧を表示するようになっている。
実行する際は以下のように Share メソッドを利用する。
SocialConnector.Share("test", "http://example.com", imagePath);
サービス種別の指定が無い以外は PostMessage と同様だ。シンプルになって良いと思う。