« 3時間でiPhoneアプリをiPad対応にした | メイン | 東京都から賞金100万円いただきましたよ、の報告 »
2010年10月22日
Facebook と Mixi のに対応したので気付いたことメモ
さて、いろいろとバタバタしているツイキャスですが、ついついミクシィとFacebookに対応してみました。
で、例のごとく気付いたこと殴り書きにして晒しておきますので、興味ある方はどうぞ。
■対応方法
対応方法には OpenID での連携、Mixi Connect (Facebook Connect) での連携、Mixi アプリ (Facebook アプリ) の3つの方法があります。(あとプラグイン的なお手軽連携とかもあるけど)
で、OpenID は終わってるからもう論外として、Mixi Connect にするか アプリにするかってのは一つ悩みどころになるわけです。
- Mixi コネクトにすると・・・
広告とか自由、画面も自由度満点。MixiボイスもAPIでたたける。が、取得できる情報が少ない。
- Mixi アプリにすると・・・
広告や画面の制約があるので、独自設計のところが出てくる。Mixiボイス連携はダイアログ開くので全然使えないけど、そんなことより友人向けにメッセージ投げられたりするメリットの方がはるかでかいので問題ない。
うーむ、アプリも Facebook みたいに、iFrame の中リダイレクトで完全別サイトみたいなの軽く許してくれるんだろうか、でも広告の制約とかあるから面倒だなー、などと考えて、今回は自由度の高い Mixi Connect にしました。どうせ今回はガラケー対応しないし。
■ガラケー対応?
Mixi Connect は基本的に PC か スマートフォン向けに設計されてるし、まぁ9割はケータイからmixiアプリって流れなんで、ガラケー対応するなら mixi アプリにする以外選択肢ないかと。余談ですが。でもガラケーなんて今更やりたくないよね、ってのは置いといて、と。
■認証方式
で、Mixi Connect も Facebook Connect も認証は OAuth 2.0 を使ってます。同じなのですげー楽。
このOAuth 2.0 は 署名がいらないので、Twitter で OAuth に苦しめられた人からすれば超絶簡単です。そもそも OAuth のライブラリすら不要なくらい。
いやー、OAuth 2.0 便利ですばらしい。Twitter もこっちにしたらいいのに・・・
■できること(Mixi)
Mixi Connect で微妙だな、と思ったのは取得できる情報がすごく少ないこと。
これはプラバシーに配慮してると思うんですが、自己紹介欄すら取れないので、なんちゃって連携的な感じになります。
それにもらえるIDは登録順がわかることでおなじみの整数 mixi id じゃなくて、mixi uid という、ごちゃごちゃの文字列になります。
少なくてごちゃごちゃの情報をうまくデザインしないといけないので、見せ方が結構難しいです。いやー、このあたりはやっぱりアプリに分がありますね。
■できること(Facebook)
Facebook Connectがすばらしいのは、取得する情報をきめこまかく指定できること。これによりユーザーも安心して連携が使えるようになります。
メールアドレスとかの情報も個別に取得するかどうか指定できる。素晴らしい。(mixi もスコープ指定はもちろんできるんですが、とにかく取れる情報が少ないので・・・)
これにより、Facebook では必要な情報だけを的確に利用することができます。
■認証トークンの期限切れ問題
で、設計で悩まされるのが認証トークンの期限切れ問題。
Mixiは認証トークンの期限切れが数分と短く、期限がきれたらリフレッシュトークンで新しいトークンを取得しなおさないといけません。
(しかもこのリフレッシュトークンにも期限があったりするから厄介)
ログイン画面でも、永続化のチェックはデフォルトOFFなんで、ほとんどの人が認証切れトークンを持ってやってくると思います。
これ、何が一番困るかというと、プロフィール画像のリンク切れなんですね。。
画像はいちいち保存したく無い(でしょ?)ので、リンクだけ保存してるんですが、プロフィールが変更されると画像がリンク切れになります。
リンク切れになることは(技術的に)検知できるんですが、はて、ここでトークンが認証切れを起こしていると手詰まり、というわけです。
これに対して Facebook は素晴らしく、まずトークンの期限が2時間と長めです。
それに加えて永続化するかどうかをスコープで選択できるので、こちらで指定してユーザーから許諾をもらう、ということが可能になります。
もっと便利なのが、プロフィール画像は Facebook ID からユニークな固定 URL で表示できます。つまり URL が変更される心配なし!
素晴らしいのはこれだけじゃなく、通常何かを投稿するときはユーザーの認証トークンが必要なんですが、フィード(Twitterみたいなやつ)への投稿に限っては認証トークン不要でおkという超親切設計!良くわかってる!
こちらはアプリケーションの認証トークンを使えばおk。期限切れの心配なし!やた!
■総じて
ということで、結局どちらもアプリ作ってなんぼなんで、Connect で連携してもできることは知れている、のですが、それでも自由度を考えると Connect もいい感じだと思います。
個人的には、Facebook の方がいろいろ綺麗に設計されてるんで、触って楽しいです。
いやー、今度はアプリだな。その前にガラケーか(mjd?)。Android もあるしな。どうすっかなー。
よろしければ Mixi か Facebook でどぞ ⇒ twitcasting.tv (ツイキャス)
■あ、その他ツイキャス系
今回 mixi と Facebook のログインに対応してみましたが、iPhone アプリはまだ対応してません。iPhone アプリは twitter ログインのみの対応となります。
ビュワーについては mixi や Facebook に対応してもいいんですが、とにかく審査終わらなくてもうモチベーションが上がりませんw
9月に出したバージョンアップがまだ審査通らないという悶絶状態なわけで・・・対応は早くて来年だと思います。。。(あ、配信はTwitterのみを継続予定です。「ツイ」キャスなんで、他のプラットフォーム対応するなら別コンセプトにするかと、、と。。)
しかし審査、デフォrで2週間というのは長すぎですな。なんとかならんですかね・・・
投稿者 aka : 2010年10月22日 19:30 / 2010年10月 / メモ
トラックバック
このエントリーのトラックバックURL:
http://133.242.136.64/mt-tb-sf.cgi/846