kazumalab tech log

流行りとリラックマと嵐が大好きです。技術的ログ。

Unity上でTwitterに投稿する

Kazuma.です。

Unity上からTwitterに投稿できるということを知り、自分用にメモしておきます。

まずはコレをアセットストアからダウンロード&インポートします。
assetstore.herokuapp.com

インポートした段階ではUnity5.3.4あたりの最新バージョンを使っていればエラーが出るはずです。
HashtableにDictionaryを入れることができない?みたいな感じのエラーです。(もう使えないよ〜って言われてます。)

そこで中に入っている Twitter.csを手直しする必要があります。
WWWRequestTokenなどでheadersというのがエラーになっています。

// 以下の行をコメントアウト
// var headers = new Hashtable();
// 新しく以下の行を追加
  Dictionary<string, string> headers = new Dictionary<string, string>();

Dictionaryの形としてはハッシュに追加するのとほとんど変わらないので、

  headers["Authorization"] = GetFinalOAuthHeader("POST", RequestTokenURL, parameters);

この文はそのままで大丈夫です。


あとはDemo.csを使って・・・と思ったのですが、この中ではOnGUIを使っているので結構不便です。
いや、前はOnGUIしかなかったのですが。

そんなこんなでuGUIのTextFieldとButtonを使って書きます。

スクリプト


インデントがおかしいのが気持ち悪いですが、直してもずれるのでご勘弁ください。

f:id:kazumalab:20160709110510p:plain

Button と TextFieldを配置します。
今回は結構適当に並べました。

あとはGameObjectか何かに先ほどのDemo.csを貼り付けて、publicのTextFieldにドラッグ&ドロップしてあげればOKです。
このTwitterのアクセストークンを取ってきた値はPlayerPrefsで保存されているので、次回移行は認証をしなくてもいいですね。

その他

Twitterで投稿といえば画像もですが、その場合
syncer.jp
ココらへんを見てpostの部分を変更するとかするとできそう。

今度やってみマス。

活用方法

VRでも活用できそうです。というより、
cluster.mu
ここでも使ってますね!(こんな感じにしたくて今回試した)