Facebook SDK for iOS · Facebook SDK for iOS iOS Meetup November !", #$!# fb.me/ca.abernathy...

Post on 14-Aug-2020

9 views 0 download

Transcript of Facebook SDK for iOS · Facebook SDK for iOS iOS Meetup November !", #$!# fb.me/ca.abernathy...

Facebook SDK for iOSiOS Meetup November !", #$!#

Tuesday, November 20, 12

Christine Abernathy

Facebook SDK for iOSiOS Meetup November !", #$!#

fb.me/ca.abernathy@abernathyca

Tuesday, November 20, 12

Key topics

! Why use the SDK?

" Permission & authentication model

# Build an app

$ Key SDK features & simplified architecture

Tuesday, November 20, 12

SDK calls the public Facebook Graph APIs, so why use it?Why use the Facebook SDK for iOS?

‣Simplified Facebook Session management‣Native UI controls for common user-oriented operations‣ Improved API support‣ Install attribution for optimizing App Install Ads

Tuesday, November 20, 12

SDK Components

Native UI

Graph

Core

FBLoginView

FBGraphObject

FBSession

FBFriendPickerViewController FBNativeDialogs

FBOpenGraphAction FBGraphUser

FBRequest FBRequestConnection FBSettings

...

Tuesday, November 20, 12

Permission & AuthenticationBe thoughtful about requesting permissions from users‣Dramatically impacts Login Dialog accept rates

Request permissions incrementally as needed

% possibilities for authentication1. iOS ! native Login Dialog2. Fast app switch to FB native app3. Fast app switch to Safari4. Web-based Login Dialog (avoid this)

Tuesday, November 20, 12

Let’s build a sample appCode

‣Basic post to feed‣Login and session‣Pick friend and place‣Post to feed

Built for explainability, not completeness!

Tuesday, November 20, 12

http://developers.facebook.com/appsCreate an app

Tuesday, November 20, 12

Let’s build a sample appCode

‣Basic post to feed‣Login and session‣Pick friend and place‣Post to feed

Native UI

Graph

Core

FBLoginView

FBGraphObject

FBSession

FBFriendPickerViewController FBNativeDialogs

FBOpenGraphAction

FBRequest FBRequestConnection FBSettings

FBGraphUser ...

Tuesday, November 20, 12

Let’s build a sample appCode

‣Basic post to feed‣Login and session‣Pick friend and place‣Post to feed

Native UI

Graph

Core

FBLoginView

FBGraphObject

FBSession

FBFriendPickerViewController FBNativeDialogs

FBOpenGraphAction

FBRequest FBRequestConnection FBSettings

FBGraphUser ...

Tuesday, November 20, 12

Let’s build a sample appCode

‣Basic post to feed‣Login and session‣Pick friend and place‣Post to feed

Native UI

Graph

Core

FBLoginView

FBGraphObject

FBSession

FBFriendPickerViewController FBNativeDialogs

FBOpenGraphAction FBGraphUser

FBRequest FBRequestConnection FBSettings

Tuesday, November 20, 12

Let’s build a sample appCode

‣Basic post to feed‣Login and session‣Pick friend and place‣Post to feed

Native UI

Graph

Core

FBLoginView

FBGraphObject

FBSession

FBFriendPickerViewController FBNativeDialogs

FBOpenGraphAction

FBRequest FBRequestConnection FBSettings

FBGraphUser ...

Tuesday, November 20, 12

Key SDK features

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

‣Legacy support for iOS SDK ".# (including web dialogs)

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

‣Legacy support for iOS SDK ".# (including web dialogs)‣Allows incremental adoption of SDK $.x programming model

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

‣Legacy support for iOS SDK ".# (including web dialogs)‣Allows incremental adoption of SDK $.x programming model

‣Report installations for App Install Ads with

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

‣Legacy support for iOS SDK ".# (including web dialogs)‣Allows incremental adoption of SDK $.x programming model

‣Report installations for App Install Ads with [FBSettings publishInstall:@"{app-id}"];

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

‣Legacy support for iOS SDK ".# (including web dialogs)‣Allows incremental adoption of SDK $.x programming model

‣Report installations for App Install Ads with [FBSettings publishInstall:@"{app-id}"];

Tuesday, November 20, 12

Key SDK features‣FBSession - single model for FB session creation, auth, permissions, errors

‣FBRequest - abstracts out FB API requests and responses

‣FBGraphObject - foundation for strongly-typed access to response data and request construction‣Native UI‣FBFriendPickerViewController and FBPlacePickerViewController

‣FBLoginView, FBUserSettingsViewController‣FBProfilePictureView

‣Legacy support for iOS SDK ".# (including web dialogs)‣Allows incremental adoption of SDK $.x programming model

‣Report installations for App Install Ads with [FBSettings publishInstall:@"{app-id}"];

Tuesday, November 20, 12

Facebook SDK !."for iOS

Resources‣developers.facebook.com/ios‣developers.facebook.com/docs/tutorials/ios-sdk-tutorial/‣developers.facebook.com/docs/tutorials/ios-sdk-games/

Tuesday, November 20, 12

Tuesday, November 20, 12