Your SlideShare is downloading. ×
0
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro

2,276

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,276
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. 3ヶ月でリア充大学生がFBアプリをリリースするまで @macrocro
    • 2. 横浜国立大学 電子情報工学科3年趣味 スキューバ・ダイビング
    • 3. これ
    • 4. これ
    • 5. これ
    • 6. これ
    • 7. こんな感じでキャンパスライフを満喫しています さて本題
    • 8. 本日、FBアプリをリリースしました
    • 9. http://app.grow.pe/misscon
    • 10. Facebook上の全ての女の子の中から、ミスFacebookを決める女の子は当然、自薦でエントリー可能ユーザーは、気に入った女の子をFacebook上の全ての女の子から探して推していく! http://app.grow.pe/misscon
    • 11. こっそりいいね! 女の子の推薦をしたい時には、こっそりいいね!友達のみならず、知らない女の子にも押すことができる。 http://app.grow.pe/misscon
    • 12. こっそりニュースフィード こっそりいいね!を押すことで、 自分の「こっそりニュースフィード」に その女の子のフィードが流れてくる http://app.grow.pe/misscon
    • 13. URLで推薦 女の子のFacebookユーザーの URLを入力することで、 友達ではない女の子 でも推薦することが可能!! ex. http://www.facebook.com/kotomi.hattanda のようなURL http://app.grow.pe/misscon
    • 14. URLで推薦例えばこの偽物ユーザー明らかに綾瀬はるか… http://app.grow.pe/misscon
    • 15. URLで推薦 入力して… 送信!!!!! http://app.grow.pe/misscon
    • 16. URLで推薦 これ確認画面がでてきます。 http://app.grow.pe/misscon
    • 17. URLで推薦 綾瀬はるかだ!!!w http://app.grow.pe/misscon
    • 18. Google Image Search Hack!<form action ="http://www.google.co.jp/searchbyimage" method="hidden" enctype="multipart/form-data" target="_blank"><input type = "hidden" name = "image_url" value = "画像のURL"><input type = "hidden" name = "image_content" value =""><input type = "hidden" name = "filename" value =""><input type = "hidden" name = "num" value = "10"><input type = "hidden" name = "hl" value ="ja"><input type = "hidden" name = "bih" value ="385"><input type = "hidden" name = "biw" value ="1280"><input type = "Submit" name = "Search" value = "偽装アカウントかチェック!" ></form> http://app.grow.pe/misscon
    • 19. FB Misscon 構成Ubuntu 11.10PHP + SymfonyApache + MySQLjQuery + Twitter Bootstrap http://app.grow.pe/misscon
    • 20. 開発メンバー自分 (プログラム・デザイン)八方くん (ロゴデザイン) http://app.grow.pe/misscon
    • 21. 3ヶ月前の自分アプリ作成経験なし!!フレームワークの「フ」の字も知らない!!生SQL文書いてた!!CSS知らない!! http://app.grow.pe/misscon
    • 22. 簡単にFBアプリを作れる環境が整っている http://app.grow.pe/misscon
    • 23. 参考にしたサイトSymfonysymfony入門:symfonyで始めるPHPフレームワークhttp://codezine.jp/article/detail/704Twitter Bootstrap本家サイトhttp://twitter.github.com/bootstrap/jQueryこれからjQueryを覚える為の3つの参考資料http://www.finefinefine.jp/web/kiji1988/ http://app.grow.pe/misscon
    • 24. Faceboo PHP SDKFacebook が提供している公式のSDK(PHP)は イケてない!!! $facdbook->api(“うんたら”); 何をしてるのかよくわからない。関数名でやりたいことが分かるのがベスト! http://app.grow.pe/misscon
    • 25. FacebookUtil.class.phpclass FacebookUtil { var $app_id; var $app_secret; var $redirect_url = REDIRECT_URL; var $access_token; var $me; public function FacebookUtil() { // config/custom.ymlからアプリキー取得 $this->custom = Spyc::YAMLLoad(CUSTOM_YAML); $this->app_id = $this->custom[core][facebook_key][app_id]; $this->app_secret = $this->custom[core][facebook_key][app_secret]; $this->crawler = new CrawlerTool(); $this->crawler->no_sleep = true; $this->crawler->no_cache = true; $this->crawler->silent = true; $this->scope = array( email, read_stream, user_birthday, user_work_history, user_location, http://app.grow.pe/misscon
    • 26. FacebookUtil.class.php public function getOauthUrl() { $oauth_url = http://www.facebook.com/dialog/oauth?client_id= . $this->app_id . &redirect_uri= . urlencode($this->redirect_url) . &scope=. implode(,, $this->scope); return $oauth_url; } public function getAccessToken($code=) { if (empty($code)) { $this->access_token = sfContext::getInstance()->getUser()->get(user)->getFacebookToken(); } $token_url = https://graph.facebook.com/oauth/access_token?client_id= . $this->app_id . &client_secret= . $this->app_secret . &redirect_uri= . urlencode($this->redirect_url) . &code= . $code; $response = $this->crawler->curlCached($token_url, array(no_cache => true)); $arr = explode(=, $response); if (!empty($arr[1])) { $this->access_token = $arr[1]; } } http://app.grow.pe/misscon
    • 27. FacebookUtil.class.phppublic function getMe() { if (empty($this->access_token)) $this->getAccessToken(); $graph_url = https://graph.facebook.com/me?access_token= . $this->access_token . &locale=ja_JP; $this->me = json_decode($this->crawler->curlCached($graph_url));}public function getFriends($uid = , $sub_query=) { if (empty($this->me)) $this->getMe(); if (empty($uid)) $uid = $this->me->id; $fql = SELECT uid, name FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1= . $uid.) . $sub_query; $graph_url = https://api.facebook.com/method/fql.query?query= . rawurlencode($fql) . &access_token= . $this->access_token.&format=json; $friend_arr = json_decode($this->crawler->curlCached($graph_url)); return $friend_arr;} http://app.grow.pe/misscon
    • 28. いかに上手く手に入れたい情報に対して FQLを投げるか http://app.grow.pe/misscon
    • 29. 例えば、ユーザーの友達の情報をとってくる$fql =SELECTuid, name,gender,locale,birthday,education,などなど...FROM user WHERE uid = 友達のID; このFQLをforeachで友達の人数分、投げる  友達が1000人いたら1000回投げていた。 →当然、重い。 http://app.grow.pe/misscon
    • 30. 例えば、ユーザーの友達の情報をとってくる $fql = SELECTuid, name,gender,locale,birthday,education,などなど...FROM user WHERE uidIN (SELECT uid2 FROM friend WHERE uid1=自分のID); FQLを投げる回数が1回で済む。 http://app.grow.pe/misscon
    • 31. ずぶの素人でも頑張ればFBアプリが作れる http://app.grow.pe/misscon
    • 32. THANK YOU FOR LISTENING!Twitterのお友達が少ないので、ぜひお友達になってください… @macrocro http://app.grow.pe/misscon

    ×