狠狠撸
Submit Search
Titanium MobileでOAuth
?
Download as KEY, PDF
?
7 likes
?
2,015 views
Kosuke Isobe
Follow
1 of 21
Download now
Downloaded 23 times
More Related Content
Titanium MobileでOAuth
1.
Titanium Mobile
でOAuth @k0sukey
2.
自己紹介 ? @k0sukey(いそべこーすけ)です ? アクトタワーの15階で働いています ?
Titanium Mobile製のアプリを数本リリー スしました
3.
こんなアプリを作りました
4.
Titanium Mobile? ? ウェブ技術者にはお馴染みのJavaScript
で、iOS/Androidネイティブのアプリを 開発することができます ? Appcelerator社が提供する開発環境、 Titanium StudioというIDEで提供されて います
5.
よく引き合いに出される対抗馬たち ? Unity →
3Dゲーム ? PhoneGap → HTML5&JS&CSS3で書ける ? CoronaSDK → 2Dゲームとか ? ngCore → 2Dソーシャルゲーム ? GameSalada → GUIでゲーム開発
6.
なぜTi? ? OSネイティブのUIが使える! ? モジュール(Obj-C、JAVA)で拡張がで
きる ? 言われるほど重くないよ ? ヌルく開発ができる!と、思っていた らObj-Cを書いている自分がいる
7.
他にも... ? JavaScript1.6に対応しています。forEach とかmapとか使えます ?
Rubyな方、CoffeeScriptで書けますよ ? node.jsな方、CommonJSで書けますよ というか、推奨です ? vimとかemacsな方、MakeTiがあります
8.
苦手なこと ? リアルタイム性の高いゲーム →
それ、QuickTiGame2Dで ? イメージ(グラフ)描画 → それ、webViewで ? バッドノウハウてんこ盛り!アンド キュメントてんこ盛り!
9.
個人的にAndroidは の道だと思います...
10.
開発のサイクル 1. まずはTiのみでホットモックを作成 2. デザイナさんに配置する画像を依頼 3.
調整&テスト 4. リリース 5. 簡単なものであれば大体一月以内でリ リース可能です
11.
本日のお題、 TiでOAuth!
12.
よくある、アプリで Twitterと連携して~ とかいうお話です
13.
OAuth ? TiでOAuthというよりも、JavaScriptで OAuthするわけです ?
と、言っても、OAuthするために便利な ライブラリがあるのです
14.
jsOAuth
15.
jsOAuth ? @bytespider さんが開発
https://github.com/bytespider/jsOAuth ? Tiのことも考えて作られているので、そ のまま動きます。もちろんブラウザで も動きます ? でも、毎回そのまま書くのもダルい...
16.
TiPlatformConnect
17.
TiPlatformConnect ? 色々なプラットフォームへ簡単に接続 するために、@ebyrn
さんのtwitter- titaniumをforkして作りました ? jsOAuth-1.3.3.jsにも多少手を入れて、 ファイルをアップロードできるように なっています
18.
TiPlatformConnect ? 各プラットフォームのAPIを薄くラップ しています ?
現在サポートしているプラットフォー ムはTwitter、Tumblr、Flickr、Mixi、 Foursquare(他にも募集中!)
19.
TiPlatformConnect ? https://github.com/k0sukey/
TiPlatformConnect ? 簡単なサンプルもついていますので、 Titanium Studioでインポートすればその ままアプリが動きます(プラット フォームのアプリ登録は忘れずに!)
20.
TwitterでOAuthの例 var twitter =
require('twitter').Twitter({ ! consumerKey: 'XXXXXXXXXXXXXXXXXXXX', ! consumerSecret: 'XXXXXXXXXXXXXXXXXXXX', ! accessTokenKey: Ti.App.Properties.getString('twitterAccessTokenKey', ''), ! accessTokenSecret: Ti.App.Properties.getString('twitterAccessTokenSecret', '') }); twitter.addEventListener('login', function(e){ ! if (e.success) { ! ! Ti.App.Properties.setString('twitterAccessTokenKey', e.accessTokenKey); ! ! Ti.App.Properties.setString('twitterAccessTokenSecret', e.accessTokenSecret); ! ! twitter.request('1/account/verify_credentials.json', {}, {}, 'GET', function(e){ ! ! ! if (e.success) { ! ! ! ! var json = JSON.parse(e.result.text); ! ! ! ! twitterLabel.setText(json.screen_name + ' on Twitter'); ! ! ! ! twitterRow.add(twitterSwitch); ! ! ! ! twitterRow.touchEnabled = false; ! ! ! ! twitterRow.selectionStyle = Ti.UI.iPhone.TableViewCellSelectionStyle.NONE; ! ! ! ! if (event) { ! ! ! ! ! twitterRow.removeEventListener('click', twitterAuthorize); ! ! ! ! } ! ! ! } else { // error proc... } ! ! }); ! } else { // error proc… } }); twitter.authorize();
21.
デモ
Editor's Notes
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Download