1 / 25

Mã Nguồn Mở Tìm Hiểu Cách Viết ứng dụng facebook

Mã Nguồn Mở Tìm Hiểu Cách Viết ứng dụng facebook. Giáo viên hướng dẫn: Tạ Nguyễn Sinh viên thực hiên: Đinh Trung Hiếu MSSV:310000020 Lớp:10CT112. I.Giới Thiệu 1.ứng dụng facebook là gì ??.

orrick
Download Presentation

Mã Nguồn Mở Tìm Hiểu Cách Viết ứng dụng facebook

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mã Nguồn MởTìm Hiểu Cách Viết ứng dụng facebook Giáo viên hướng dẫn: Tạ Nguyễn Sinh viên thực hiên: Đinh Trung Hiếu MSSV:310000020 Lớp:10CT112

  2. I.GiớiThiệu1.ứng dụngfacebooklàgì?? Applications hay ngắnhơnlà Apps: làcácchươngtrìnhđượcthiếtkếđểtươngtácvớingườidùng Facebook . Thôngthườngchúnglàcácứngdụng web đượclậptrìnhbằngmộtsốngônngữlậptrìnhphổbiến, tuynhiênchúngcómộtđặcđiểmriêngđólàcóthểtươngtácvớicơsởdữliệucủa Facebook qua API (Application Programming Interface) đểtìmramộtsốthông tin nhưbạnbè, nhữngngườiđangsửdụngứngdụng…(tấtnhiênlàphảiđượcsựchophépcủabạn).

  3. 2.mục tiêucủaứngdụng: Điềumà Facebook quantâmnhấtlúcnàykhôngphảisốlượngngười dung nữamàlàchấtlượngcácứngdụng, cũngnhưlợinhuận.Facebookđangđầutưvàolĩnhvựcgiảitríđaphươngtiện. Đặcbiệtlàcungcấpthêmnhiềuứngdụngvềnghenhạcvàxem video. Mộtkhicácứngdụnggiảitrítrênmạngxãhộinàytăngvềmặtchấtlượngvàsốlượngthìcànghấpdẫnngườidùng. Chắcchắnrằngtrongtươnglainócũngsẽmanglạilợinhuậnkhôngnhỏcho Facebook.

  4. 3.lợi ích: • Kéolượt like Facebook, Fanpagecủabạnlêntừnggiây, từngphút. Qua đótăngkhảnăngtruyềntảithông tin củabạnđếnnhiềungườidùnghơnnữa. • Tạocáccuộcthi, sựkiện, bìnhchọn, bốcthămtrúngthưởngngaytrên Facebook. • Tạocácứngdụng Game trên Facebook, thuhútbạnbè Facebook trêntoànthếgiới

  5. Candycrush:

  6. Farm hero:

  7. - Hàngtrămứngdụngtrênfacebookđangđược “ralò” mỗingàyđểphụcvụnhucầugiảitrícủakháchhàng. Nhưngchắcítngườibiếtrằng, bêncạnhchứcnănggiảitrí, còncómộtchứcnăngtuyệtvờikhác: kiếmtiền 3.ngôn ngữlậptrình: -php -javacript

  8. II.Cáchviếtmộtứngdụngchofacebook

  9. A.ĐăngKí App với Facebook: • Trướctiênbạntruycậpvàođườngdẫnsau: https://developers.facebook.comĐâylàtrangdànhchocác developer của Facebook.

  10. ở mụcứngdụngbạn click chọn create a new app:

  11. Mộtcửasổmớihiệnrađềnghịbạnnhậpthông tin khaibáovề App sẽtạocủamình.: Bạncầnkhaibáo: • Display name:têncủa App, cáinàytùybạn. • Namespace:phầnnàychínhlàđườngdẫnđến app củabạn. BạncầnchọnmộttênkhôngphảitiếngViệtvàduynhất.

  12. Saukhinhấnnúttạoứngdụngthìfacebooksẽbắtchúng ta nhậpmãcapchavàođểxácnhận.

  13. Saukhiviệcđăngkýhoàntất, bạncóthểcấuhìnhcho App củamình.

  14. .click thêmnềntảng :

  15. Click chọnứngdụngtrênfacebook.sẽhiệnlênnhững thong tin cơbảnsau: • Mãứngdụng:số ID củaứngdụng do FaceBooktựsinhra.Bạncóthểchẳngcầnnhớsố ID nàyvìcóthểlấy ID nàydễdàngbằngcáchvàođâymàxem. • App Secrect:đâylàmãứngdụngmàchỉcóngườiquảntrịhoặcđăngkýứngdụngmớicó. Mãnàygiúpchocácđoạnmãlậptrìnhsaunàycủabạn (bằng PHP, Javascript...) cóthểkếtnốivới Restful Service củaFaceBookđược. Nórấtcầnthiếtchoquátrìnhviếtứngdụngsaunày. Tuynhiên, do cóthểxemdễdàngnênbạnkhôngcầnphảinhớnó. • Emai lien hệ:địachỉ email FaceBookcóthểgửi email chobạnđểthôngbáovềtìnhhìnhứngdụnghoặccácphảnhồikhicầnthiết • App Domain:tênmiềnbạnsửdụngcho App. (khôngđiềncũngkhôngsao)

  16. Phầnứngdụngtrên Facebook, cácbạncầnchú ý nhữngđiểmsau: • Canvas Page:nếuđể ý bạnsẽthấyđườngdẫnnàychínhlàđườngdẫnmặcđịnhcủaFaceBookkếthợpvớiphần App Namespace màbạnđãđiềntrướcđây. ĐâylàđườngdẫnđếnứngdụngcủabạntrênFaceBook. • Canvas URL: đườngdẫnnàykháquantrọng. Khimộtngườidùng click vàođườngdẫnCanvas Page, Facebook sẽgọimột Frame dựatrên URL bạnsẽkhaibáo ở phầnnàyđểlấynội dung. Bạncầnđiềnchínhxácđườngdẫnđếntrangmàngườidùngsẽthấykhitảiứngdụng.đường link đếnứngdụng.nằmtrên host. • Secure canvas URL:đâylàdạngđịnhdạngmãhóadữliệu SSL. Đểtảidữliệuứngdụnglên, FaceBookđòihỏidữliệuphảiđượcmãhóa. Do đó hosting củabạnphảicầnmở SSL. • Cavas Width: độrộngkhungứngdụng. • Cavas Height: độcaokhungứngdụng.

  17. B.ViếtMộtỨngDụngBằng PHP: • Trướctiên, do việcxâydựng app củachúng ta dựatrênnềntảng PHP, chonênbạncầndownload bộ SDK củaFaceBookdựatrênnềntảng PHP. Chúng ta chépbộ SDK vàothưmụcchứaứngdụngcủachúng ta. • Cácbạnvàođịachỉnhưhình:

  18. Saukhi click vào download the PHP SDK, ta sẽđược link tảibộ PHP SDK:

  19. Click download ZIP

  20. Saukhitảivêvàgiảinénthìcácbạnsẽcóđượcnhữngthưmụcvà files sau • Cácthưmục examples, src, tests chứacáchàmmàfacebookcungcấpsẵnchochúng ta, muốnsửdụngnó, chúng ta chỉcần copy vàdánvào file cấuhìnhứngdụng . • Việctiếptheo, ta cầntạomột file cótênindex.phpđểcấuhìnhđể SDK cóthểkếtnốivới Restful Service của Facebook. Nội dung file nàynhưsau

  21.  $config = array();  $config["appId"] = '123456789';  $config["secret"] = '123456789abc';  $config["fileUpload"] = false; // optional  $config["cookie"] = true; // enable optional cookie support?>Trongtrongđoạn code trên, bạncầnthaylại$config["appId"]và$config["secret"]bằngcácchuỗikítựđược Facebook cungcấp.Tiếptheo, bạnviết file index.phpđểchạy app củamình. Hãybắtđầuvớiđoạn code sau:require_once("config.php"); require_once("src/facebook.php"); $facebook = new Facebook($config); ?>Nóimộtcáchđơngiảnvàdễhiểu, chúng ta đãcấuhìnhvàkếtnốivới SDK củaFaceBookthông qua object $facebook.Đểkiểmtrangườidùngđã "Like" ứngdụng hay chưa, bạncóthểsửdụngđoạn code sau:if($signed_request["page"]["liked"]!=1){  $is_liked = false;  }else{  $is_liked = true; }  

  22. Nếubiến$is_likedtrảvề true nghĩalàngườidùngđã "Like" ứngdụng, bạncóthểđưahọđếnứngdụng. Ngượclạibạncóthểhiểnthịrathông tin đềnghịngườidùng “Like” ứngdụngLúcnày, chúng ta sẽcầnmộtcấutrúcif elseđểxửlývấnđềngườidùngđã like hay chưa. Tiếptheo, chúng ta sẽlấythông tin ngườidùngtừFaceBookđểphụcvụchomụcđíchcủamình. Bạncóthểlấyrấtnhiềuthứ, nhưngtrongbàinàymìnhchỉlấynhữngthông tin cơbảnthôi:$user = $facebook->getUser();     if ($user) {       try {         // Proceed knowing you have a logged in user who's authenticated.         $user_profile = $facebook->api('/me');       } catch (FacebookApiException $e) { error_log($e);         $user = null;       } 

  23.         $code = $_REQUEST["code"];         if(empty($code)) {             $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection             $dialog_url = "http://www.facebook.com/dialog/oauth?client_id="              . $config["appId"] . "&redirect_uri=" . urlencode(CANVAS_PAGE) . "&state="             . $_SESSION['state'];             echo("<script> top.location.href='" . $dialog_url . "'</script>");         }         //get user access_token        $token_url = 'https://graph.facebook.com/oauth/access_token?client_id='         . $config["appId"] . '&redirect_uri=' . urlencode(CANVAS_PAGE)          . '&client_secret=' . $config["secret"]          . '&code=' . $code;         $access_token = file_get_contents($token_url);         $code = $_REQUEST["code"];         if(empty($code)) {             $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection             $dialog_url = "http://www.facebook.com/dialog/oauth?client_id="              . $config["appId"] . "&redirect_uri=" . urlencode(CANVAS_PAGE) . "&state="             . $_SESSION['state'];             echo("<script> top.location.href='" . $dialog_url . "'</script>");         }         //get user access_token        $token_url = 'https://graph.facebook.com/oauth/access_token?client_id='         . $config["appId"] . '&redirect_uri=' . urlencode(CANVAS_PAGE)          . '&client_secret=' . $config["secret"]          . '&code=' . $code;         $access_token = file_get_contents($token_url); 

  24.         // Run fql query         $fql_query_url = 'https://graph.facebook.com/'         . '/fql?q=SELECT+birthday+FROM+user+WHERE+uid=me()'         . '&' . $access_token;         $fql_query_result = file_get_contents($fql_query_url);         $fql_query_obj = json_decode($fql_query_result, true);         $birthday = $fql_query_obj["data"][0]["birthday"];         ?>         <imgsrc="https://graph.facebook.com/<?php echo $user; ?>/picture">         <h3>Chào <strong><?=$outname . " " . $user_profile["name"];?></strong></h3>         <div>             <p>Ngàysinhcủabạnlà: <?=$birthday?></p>         </div>         <?php    }else{         echo("<script> top.location.href='" . $facebook->getLoginUrl() . "&scope=user_birthday'</script>");     }        // Run fql query         $fql_query_url = 'https://graph.facebook.com/'         . '/fql?q=SELECT+birthday+FROM+user+WHERE+uid=me()'         . '&' . $access_token;         $fql_query_result = file_get_contents($fql_query_url);         $fql_query_obj = json_decode($fql_query_result, true);         $birthday = $fql_query_obj["data"][0]["birthday"];         ?>         <imgsrc="https://graph.facebook.com/<?php echo $user; ?>/picture">         <h3>Chào <strong><?=$outname . " " . $user_profile["name"];?></strong></h3>         <div>             <p>Ngàysinhcủabạnlà: <?=$birthday?></p>         </div>         <?php    }else{         echo("<script> top.location.href='" . $facebook->getLoginUrl() . "&scope=user_birthday'</script>");     }

  25. Hết

More Related