เริ่มต้นใช้งาน Facebook SDK สำหรับ iOS v3.1

แปลแบบกากๆ นะจ๊ะ

1. Install the Prerequisites

You need Xcode 4.5, and optionally, Git

OS X is required for all iOS development. If you’re completely new to iOS development, you’ll need Xcode installed on your Mac too. It’s available through the App Store.

2. Install the Facebook SDK for iOS

Download and install the Facebook SDK for iOS

Download the SDK here and install the package. The default install location is ~/Documents/FacebookSDK.

Source code for the SDK is also available on GitHub, and if you have Git installed, you can create a local repository by cloning it to a location of your choice:

git clone git@github.com:facebook/facebook-ios-sdk.git FacebookSDK 

This allows you to keep the SDK up-to-date by simply pulling new commits to the repo.

Note that when building the SDK from source, you must first run scripts/build_framework.sh before compiling and running the samples.

3. Run the Samples

Try the sample projects in the Samples folder of the installed SDK

The SDK includes a number of samples, each of which demonstrates an important part of the SDK and various techniques for building social apps.The following samples are available in the SDK. Simply open the Xcode project files inside each of the folders.

Basic samples

  • ProfilePictureSample: demonstrates non-logged-in usage of the profile picture control
  • FriendPickerSample: demonstrates usage of the native friend picker to choose amongst the user’s friends
  • PlacePickerSample: demonstrates logged-in usage of the place picker control

Feature samples

  • SessionLoginSample: demonstrates detailed login flow using the SDK
  • JustRequestSample: demonstrates logged-in user making single and batched Facebook API requests
  • BooleanOGSample: demonstrates publishing an Open Graph custom action type
  • SwitchUserSample: demonstrates an approach to allow switching between multiple users

Complete samples

  • HelloFacebookSample: an all-round sample that demonstrates profile access, status updates and photo uploading
  • Scrumptious: demonstrates the use of login, requests, pickers, picture uploads, and Open Graph publishing
  • Hackbook: another sample app demonstrating a selection of Graph API calls

4. Create a Facebook App

คุณจะต้องใช้  Facebook App ID ก่อนที่คุณจะสร้างโปรเจคใหม่ด้วย SDK นี้

เริ่มจากให้เข้าไปสร้าง app ใหม่ที่ Facebook App Dashboard, กรอกข้อมูลพื้นฐานสำหรับ app ใหม่ของคุณ
เมื่อสร้างแล้ว ให้สังเกตุว่าจะมี app ID แสดงขึ้นมาที่ด้านบนของหน้าแดชบอร์ดหรือถ้าหากว่าคุณมี app ตัวอื่นที่เคยสร้างไว้อยู่แล้วก็สามารถนำมาใช้ได้เลยตอนนี้คุณต้องการที่จะกำหนดค่า Bundle Identifier และ ตั้งค่า Facebook application ให้ support การ login จาก iOS application.(Note: นี่เป็นขั้นตอนใหม่ใน Facebook SDK for iOS v3.1.รุ่นก่อนหน้านี้ของ SDK ไม่จำเป็นต้องทำขั้นตอนนี้.)คลิกที่เครื่องหมายถูกที่อยู่หน้า “Native iOS App” และนำ Bundle Identifier ของapplication ของคุณมาใส่ที่ช่อง “Bundle ID” หลังจากนั้นดูใช้แน่ใจว่า Facebook Login ถูกตั้งค่าให้เป็น “Enabled”

คุณสามารถหาหรือกำหนดค่า Bundle Identifier ใน Xcode ที่ Project tab

5. Configure a new Xcode Project

การสร้างโปรเจคใหม่, เพิ่ม Facebook SDK สำหรับ iOS เข้าไปในโปรเจคและการกำหนดค่า Facebook App ID

ใน Xcode, เริ่มต้นด้วยการสร้างโปรเจคใหม่, และเลือก ‘Single View Application’ ที่แสดงในหน้าสร้างโปรเจคใหม่.

กรอก Product name และ Company identifier ตามที่โปรแกรมต้องการ:

การเพิ่ม SDK และ framework ที่ต้องใช้

ให้เพิ่ม Facebook SDK สำหรับ iOS Framework โดยการลากโฟเดอร์ FacebookSDK.framework จาก SDK ที่ได้ installation ไว้ก่อนหน้านี้แล้ว โดยให้โฟเดอร์ FacebookSDK.framework ไปอยู่ในโฟเดอร์ Frameworks ที่อยู่ใน Project Navigator ของ Xcode โปรแกรม

 

Xcode จะแสดงหน้าจอตามในรูปขึ้นมา ให้เลือก ‘Create groups for any added folders’ และ ให้ยกเลิกการเลือก ‘Copy items into destination group’s folder (ถ้าต้องการ)’ โปรแกรมจะไม่ Copy โฟเดอร์ FacebookSDK.framework มาในโปรแกรมของเราแต่จะใช้การอ้างอิงไปยังตำแหน่งของโฟเดอร์

เพิ่ม iOS resource bundle โดยลากไฟล์ FacebookSDKResources.bundle จาก FacebookSDK.framework/Resources ให้เข้าไปที่โปรแกมโดยให้อยู่ในโฟเดอร์ Frameworks ที่อยู่ใน Project Navigator ของ Xcode โปรแกรม

 

จากนั้นให้เลือก ‘Create groups for any added folders’ และ ให้ยกเลิกการเลือก ‘Copy items into destination group’s folder (ถ้าต้องการ)’ โปรแกรมจะไม่ Copy โฟเดอร์ FacebookSDK.framework มาในโปรแกรมของเราแต่จะใช้การอ้างอิงไปยังตำแหน่งของโฟเดอร์

นอกจากนี้คุณยังสามารถเพิ่ม FBUserSettingsViewResources bundle ในลักษณะเดียวกัน ถ้าคุณคาดหวังที่จะใช้ controller ใน app ของคุณ

ใน SDK นั้นอาศัย frameworks อื่น ๆ อีกสามตัว (AdSupport, Accounts and Social) ที่จะใช้ร่วมกับ Facebook feature ที่สร้างใน iOS 6. เพื่อเพิ่ม frameworks เหล่านี้, ให้ไปที่ ‘Linked Frameworks and Libraries’ ซึ่งจะอยู่ในหน้าจอ target’s Summary (ให้เลือนลงมาหน่อยนึงจะเห็นเอง) จากนั้นให้คลิกที่ปุ่ม ‘plus’ สำหรับเพิ่ม frameworks เข้าไป:

Note: คุณควรใช้เลือก ‘Optional’ สำหรับ iOS6 ในการเจาะจงที่จะใช้ frameworks หากคุณต้องการให้ app ของคุณยังสามารถ build ใน operating systems version ที่เก่ากว่าได้.

เมื่อเสร็จแล้ว Project Navigator ของคุณจะดูคล้ายๆ แบบนี้:

การเพิ่ม SQLite

ถัดไปคุณจะต้องเพิ่ม ”-lsqlite3.0” SQL library ในรายการของ build dependencies ที่อยู่ในหน้าจอ Build Settings โดยให้เลือกที่แท๊บ Build Settings ที่เมนูใต้แท๊บให้เปลี่ยนจาก Basic เป็น All เปลี่ยนจาก Combined เป็น Levels จากนั้นให้ Search หา “Other Linker Flags” แล้วเพิ่ม “-lsqlite3.0” เข้าไปตามรูปด้านล่าง

การเพิ่ม Facebook App ID ของคุณ

ขั้นตอนสุดท้าย คุณต้องใส่ Facebook app ID เข้าไป 2 ที่ในไฟล์ .plist หลักของโปรแกรม. ให้สร้างคีย์ FacebookAppID มี Type เป็น string และเพิ่ม app ID เข้าไป:

เช่นเดียวกัน, สร้าง array key ที่ชื่อว่า URL types โดยให้มี array ด้านในอีกหนึ่งตัว ให้ตั้งชื่อว่า URL Schemes. เพิ่ม item ใน array ที่ชื่อว่า URL Schemes ใส่ค่า app ID ที่ด้านหน้าของใส่คำว่า fb ไว้ด้านหน้า ดังตัวอย่างในรูป:

(This is used to ensure the application will receive the callback URL of the web-based OAuth flow.)