motion-firebase 1.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +17 -0
- data/.travis.yml +2 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +28 -0
- data/README.md +511 -0
- data/Rakefile +11 -0
- data/app/app_delegate.rb +156 -0
- data/lib/firebase/firebase.rb +242 -0
- data/lib/firebase/firebase_auth_client.rb +49 -0
- data/lib/firebase/version.rb +5 -0
- data/lib/motion-firebase-auth.rb +19 -0
- data/lib/motion-firebase-facebook.rb +17 -0
- data/lib/motion-firebase.rb +19 -0
- data/lib/vendor/FacebookSDK.framework/FacebookSDK +0 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBAccessTokenData.h +115 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBCacheDescriptor.h +42 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBError.h +274 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBFrictionlessRecipientCache.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBFriendPickerViewController.h +290 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBGraphLocation.h +77 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBGraphObject.h +224 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBGraphPlace.h +60 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBGraphUser.h +90 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBInsights.h +271 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBLoginView.h +178 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBNativeDialogs.h +170 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBOpenGraphAction.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBPlacePickerViewController.h +257 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBProfilePictureView.h +80 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBRequest.h +504 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBRequestConnection.h +389 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBSession.h +751 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBSessionTokenCachingStrategy.h +152 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBSettings.h +136 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBTestSession.h +135 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBUserSettingsViewController.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBViewController.h +118 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FBWebDialogs.h +234 -0
- data/lib/vendor/FacebookSDK.framework/Headers/FacebookSDK.h +132 -0
- data/lib/vendor/FacebookSDK.framework/Headers/NSError+FBError.h +59 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Resources/Info.plist +20 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBAccessTokenData.h +115 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBCacheDescriptor.h +42 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBConnect.h +22 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBDialog.h +165 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBError.h +274 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFrictionlessRecipientCache.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFrictionlessRequestSettings.h +85 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFriendPickerViewController.h +290 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphLocation.h +77 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphObject.h +224 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphPlace.h +60 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphUser.h +90 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBInsights.h +271 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBLoginDialog.h +48 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBLoginView.h +178 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBNativeDialogs.h +170 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBOpenGraphAction.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBPlacePickerViewController.h +257 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBProfilePictureView.h +80 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBRequest.h +504 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBRequestConnection.h +389 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJSON.h +75 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonBase.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonParser.h +87 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonWriter.h +129 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSession.h +751 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSessionManualTokenCachingStrategy.h +32 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSessionTokenCachingStrategy.h +152 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSettings.h +136 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBTestSession.h +135 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBUserSettingsViewController.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBViewController.h +118 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBWebDialogs.h +234 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/Facebook.h +281 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FacebookSDK.h +132 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/DeprecatedHeaders/NSError+FBError.h +59 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/FacebookSDK +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBAccessTokenData.h +115 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBCacheDescriptor.h +42 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBError.h +274 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBFrictionlessRecipientCache.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBFriendPickerViewController.h +290 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphLocation.h +77 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphObject.h +224 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphPlace.h +60 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBGraphUser.h +90 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBInsights.h +271 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBLoginView.h +178 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBNativeDialogs.h +170 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBOpenGraphAction.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBPlacePickerViewController.h +257 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBProfilePictureView.h +80 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBRequest.h +504 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBRequestConnection.h +389 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBSession.h +751 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBSessionTokenCachingStrategy.h +152 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBSettings.h +136 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBTestSession.h +135 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBUserSettingsViewController.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBViewController.h +118 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FBWebDialogs.h +234 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/FacebookSDK.h +132 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Headers/NSError+FBError.h +59 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/A/Resources/Info.plist +20 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBAccessTokenData.h +115 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBCacheDescriptor.h +42 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBConnect.h +22 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBDialog.h +165 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBError.h +274 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBFrictionlessRecipientCache.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBFrictionlessRequestSettings.h +85 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBFriendPickerViewController.h +290 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphLocation.h +77 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphObject.h +224 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphPlace.h +60 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBGraphUser.h +90 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBInsights.h +271 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBLoginDialog.h +48 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBLoginView.h +178 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBNativeDialogs.h +170 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBOpenGraphAction.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBPlacePickerViewController.h +257 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBProfilePictureView.h +80 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBRequest.h +504 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBRequestConnection.h +389 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJSON.h +75 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJsonBase.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJsonParser.h +87 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSBJsonWriter.h +129 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSession.h +751 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSessionManualTokenCachingStrategy.h +32 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSessionTokenCachingStrategy.h +152 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBSettings.h +136 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBTestSession.h +135 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBUserSettingsViewController.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBViewController.h +118 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FBWebDialogs.h +234 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/Facebook.h +281 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/FacebookSDK.h +132 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/DeprecatedHeaders/NSError+FBError.h +59 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/FacebookSDK +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBAccessTokenData.h +115 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBCacheDescriptor.h +42 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBError.h +274 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBFrictionlessRecipientCache.h +86 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBFriendPickerViewController.h +290 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphLocation.h +77 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphObject.h +224 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphPlace.h +60 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBGraphUser.h +90 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBInsights.h +271 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBLoginView.h +178 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBNativeDialogs.h +170 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBOpenGraphAction.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBPlacePickerViewController.h +257 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBProfilePictureView.h +80 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBRequest.h +504 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBRequestConnection.h +389 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBSession.h +751 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBSessionTokenCachingStrategy.h +152 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBSettings.h +136 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBTestSession.h +135 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBUserSettingsViewController.h +127 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBViewController.h +118 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FBWebDialogs.h +234 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/FacebookSDK.h +132 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Headers/NSError+FBError.h +59 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png +0 -0
- data/lib/vendor/FacebookSDK.framework/Versions/Current/Resources/Info.plist +20 -0
- data/lib/vendor/Firebase.framework/Firebase +0 -0
- data/lib/vendor/Firebase.framework/Headers/FDataSnapshot.h +146 -0
- data/lib/vendor/Firebase.framework/Headers/FEventType.h +43 -0
- data/lib/vendor/Firebase.framework/Headers/FMutableData.h +134 -0
- data/lib/vendor/Firebase.framework/Headers/FQuery.h +229 -0
- data/lib/vendor/Firebase.framework/Headers/FTransactionResult.h +50 -0
- data/lib/vendor/Firebase.framework/Headers/Firebase.h +629 -0
- data/lib/vendor/Firebase.framework/Versions/A/Firebase +0 -0
- data/lib/vendor/Firebase.framework/Versions/A/Headers/FDataSnapshot.h +146 -0
- data/lib/vendor/Firebase.framework/Versions/A/Headers/FEventType.h +43 -0
- data/lib/vendor/Firebase.framework/Versions/A/Headers/FMutableData.h +134 -0
- data/lib/vendor/Firebase.framework/Versions/A/Headers/FQuery.h +229 -0
- data/lib/vendor/Firebase.framework/Versions/A/Headers/FTransactionResult.h +50 -0
- data/lib/vendor/Firebase.framework/Versions/A/Headers/Firebase.h +629 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Firebase +0 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Headers/FDataSnapshot.h +146 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Headers/FEventType.h +43 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Headers/FMutableData.h +134 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Headers/FQuery.h +229 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Headers/FTransactionResult.h +50 -0
- data/lib/vendor/Firebase.framework/Versions/Current/Headers/Firebase.h +629 -0
- data/lib/vendor/FirebaseAuthClient.framework/FirebaseAuthClient +0 -0
- data/lib/vendor/FirebaseAuthClient.framework/Headers/FATypes.h +48 -0
- data/lib/vendor/FirebaseAuthClient.framework/Headers/FAUser.h +85 -0
- data/lib/vendor/FirebaseAuthClient.framework/Headers/FirebaseAuthClient.h +149 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/A/FirebaseAuthClient +0 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/A/Headers/FATypes.h +48 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/A/Headers/FAUser.h +85 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/A/Headers/FirebaseAuthClient.h +149 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/FirebaseAuthClient +0 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/Headers/FATypes.h +48 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/Headers/FAUser.h +85 -0
- data/lib/vendor/FirebaseAuthClient.framework/Versions/Current/Headers/FirebaseAuthClient.h +149 -0
- data/motion-firebase.gemspec +23 -0
- data/resources/Default-568h@2x.png +0 -0
- metadata +357 -0
@@ -0,0 +1,751 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright 2012 Facebook
|
3
|
+
*
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
* you may not use this file except in compliance with the License.
|
6
|
+
* You may obtain a copy of the License at
|
7
|
+
*
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
*
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
* See the License for the specific language governing permissions and
|
14
|
+
* limitations under the License.
|
15
|
+
*/
|
16
|
+
|
17
|
+
#import <Foundation/Foundation.h>
|
18
|
+
#import <Accounts/Accounts.h>
|
19
|
+
|
20
|
+
// up-front decl's
|
21
|
+
@class FBSession;
|
22
|
+
@class FBSessionTokenCachingStrategy;
|
23
|
+
@class FBAccessTokenData;
|
24
|
+
|
25
|
+
#define FB_SESSIONSTATETERMINALBIT (1 << 8)
|
26
|
+
|
27
|
+
#define FB_SESSIONSTATEOPENBIT (1 << 9)
|
28
|
+
|
29
|
+
/*
|
30
|
+
* Constants used by NSNotificationCenter for active session notification
|
31
|
+
*/
|
32
|
+
|
33
|
+
/*! NSNotificationCenter name indicating that a new active session was set */
|
34
|
+
extern NSString *const FBSessionDidSetActiveSessionNotification;
|
35
|
+
|
36
|
+
/*! NSNotificationCenter name indicating that an active session was unset */
|
37
|
+
extern NSString *const FBSessionDidUnsetActiveSessionNotification;
|
38
|
+
|
39
|
+
/*! NSNotificationCenter name indicating that the active session is open */
|
40
|
+
extern NSString *const FBSessionDidBecomeOpenActiveSessionNotification;
|
41
|
+
|
42
|
+
/*! NSNotificationCenter name indicating that there is no longer an open active session */
|
43
|
+
extern NSString *const FBSessionDidBecomeClosedActiveSessionNotification;
|
44
|
+
|
45
|
+
/*!
|
46
|
+
@typedef FBSessionState enum
|
47
|
+
|
48
|
+
@abstract Passed to handler block each time a session state changes
|
49
|
+
|
50
|
+
@discussion
|
51
|
+
*/
|
52
|
+
typedef enum {
|
53
|
+
/*! One of two initial states indicating that no valid cached token was found */
|
54
|
+
FBSessionStateCreated = 0,
|
55
|
+
/*! One of two initial session states indicating that a cached token was loaded;
|
56
|
+
when a session is in this state, a call to open* will result in an open session,
|
57
|
+
without UX or app-switching*/
|
58
|
+
FBSessionStateCreatedTokenLoaded = 1,
|
59
|
+
/*! One of three pre-open session states indicating that an attempt to open the session
|
60
|
+
is underway*/
|
61
|
+
FBSessionStateCreatedOpening = 2,
|
62
|
+
|
63
|
+
/*! Open session state indicating user has logged in or a cached token is available */
|
64
|
+
FBSessionStateOpen = 1 | FB_SESSIONSTATEOPENBIT,
|
65
|
+
/*! Open session state indicating token has been extended */
|
66
|
+
FBSessionStateOpenTokenExtended = 2 | FB_SESSIONSTATEOPENBIT,
|
67
|
+
|
68
|
+
/*! Closed session state indicating that a login attempt failed */
|
69
|
+
FBSessionStateClosedLoginFailed = 1 | FB_SESSIONSTATETERMINALBIT, // NSError obj w/more info
|
70
|
+
/*! Closed session state indicating that the session was closed, but the users token
|
71
|
+
remains cached on the device for later use */
|
72
|
+
FBSessionStateClosed = 2 | FB_SESSIONSTATETERMINALBIT, // "
|
73
|
+
} FBSessionState;
|
74
|
+
|
75
|
+
/*! helper macro to test for states that imply an open session */
|
76
|
+
#define FB_ISSESSIONOPENWITHSTATE(state) (0 != (state & FB_SESSIONSTATEOPENBIT))
|
77
|
+
|
78
|
+
/*! helper macro to test for states that are terminal */
|
79
|
+
#define FB_ISSESSIONSTATETERMINAL(state) (0 != (state & FB_SESSIONSTATETERMINALBIT))
|
80
|
+
|
81
|
+
/*!
|
82
|
+
@typedef FBSessionLoginBehavior enum
|
83
|
+
|
84
|
+
@abstract
|
85
|
+
Passed to open to indicate whether Facebook Login should allow for fallback to be attempted.
|
86
|
+
|
87
|
+
@discussion
|
88
|
+
Facebook Login authorizes the application to act on behalf of the user, using the user's
|
89
|
+
Facebook account. Usually a Facebook Login will rely on an account maintained outside of
|
90
|
+
the application, by the native Facebook application, the browser, or perhaps the device
|
91
|
+
itself. This avoids the need for a user to enter their username and password directly, and
|
92
|
+
provides the most secure and lowest friction way for a user to authorize the application to
|
93
|
+
interact with Facebook. If a Facebook Login is not possible, a fallback Facebook Login may be
|
94
|
+
attempted, where the user is prompted to enter their credentials in a web-view hosted directly
|
95
|
+
by the application.
|
96
|
+
|
97
|
+
The `FBSessionLoginBehavior` enum specifies whether to allow fallback, disallow fallback, or
|
98
|
+
force fallback login behavior. Most applications will use the default, which attempts a normal
|
99
|
+
Facebook Login, and only falls back if needed. In rare cases, it may be preferable to disallow
|
100
|
+
fallback Facebook Login completely, or to force a fallback login.
|
101
|
+
*/
|
102
|
+
typedef enum {
|
103
|
+
/*! Attempt Facebook Login, ask user for credentials if necessary */
|
104
|
+
FBSessionLoginBehaviorWithFallbackToWebView = 0,
|
105
|
+
/*! Attempt Facebook Login, no direct request for credentials will be made */
|
106
|
+
FBSessionLoginBehaviorWithNoFallbackToWebView = 1,
|
107
|
+
/*! Only attempt WebView Login; ask user for credentials */
|
108
|
+
FBSessionLoginBehaviorForcingWebView = 2,
|
109
|
+
/*! Attempt Facebook Login, prefering system account and falling back to fast app switch if necessary */
|
110
|
+
FBSessionLoginBehaviorUseSystemAccountIfPresent = 3,
|
111
|
+
} FBSessionLoginBehavior;
|
112
|
+
|
113
|
+
/*!
|
114
|
+
@typedef FBSessionDefaultAudience enum
|
115
|
+
|
116
|
+
@abstract
|
117
|
+
Passed to open to indicate which default audience to use for sessions that post data to Facebook.
|
118
|
+
|
119
|
+
@discussion
|
120
|
+
Certain operations such as publishing a status or publishing a photo require an audience. When the user
|
121
|
+
grants an application permission to perform a publish operation, a default audience is selected as the
|
122
|
+
publication ceiling for the application. This enumerated value allows the application to select which
|
123
|
+
audience to ask the user to grant publish permission for.
|
124
|
+
*/
|
125
|
+
typedef enum {
|
126
|
+
/*! No audience needed; this value is useful for cases where data will only be read from Facebook */
|
127
|
+
FBSessionDefaultAudienceNone = 0,
|
128
|
+
/*! Indicates that only the user is able to see posts made by the application */
|
129
|
+
FBSessionDefaultAudienceOnlyMe = 10,
|
130
|
+
/*! Indicates that the user's friends are able to see posts made by the application */
|
131
|
+
FBSessionDefaultAudienceFriends = 20,
|
132
|
+
/*! Indicates that all Facebook users are able to see posts made by the application */
|
133
|
+
FBSessionDefaultAudienceEveryone = 30,
|
134
|
+
} FBSessionDefaultAudience;
|
135
|
+
|
136
|
+
/*!
|
137
|
+
@typedef FBSessionLoginType enum
|
138
|
+
|
139
|
+
@abstract
|
140
|
+
Used as the type of the loginType property in order to specify what underlying technology was used to
|
141
|
+
login the user.
|
142
|
+
|
143
|
+
@discussion
|
144
|
+
The FBSession object is an abstraction over five distinct mechanisms. This enum allows an application
|
145
|
+
to test for the mechanism used by a particular instance of FBSession. Usually the mechanism used for a
|
146
|
+
given login does not matter, however for certain capabilities, the type of login can impact the behavior
|
147
|
+
of other Facebook functionality.
|
148
|
+
*/
|
149
|
+
typedef enum {
|
150
|
+
/*! A login type has not yet been established */
|
151
|
+
FBSessionLoginTypeNone = 0,
|
152
|
+
/*! A system integrated account was used to log the user into the application */
|
153
|
+
FBSessionLoginTypeSystemAccount = 1,
|
154
|
+
/*! The Facebook native application was used to log the user into the application */
|
155
|
+
FBSessionLoginTypeFacebookApplication = 2,
|
156
|
+
/*! Safari was used to log the user into the application */
|
157
|
+
FBSessionLoginTypeFacebookViaSafari = 3,
|
158
|
+
/*! A web view was used to log the user into the application */
|
159
|
+
FBSessionLoginTypeWebView = 4,
|
160
|
+
/*! A test user was used to create an open session */
|
161
|
+
FBSessionLoginTypeTestUser = 5,
|
162
|
+
} FBSessionLoginType;
|
163
|
+
|
164
|
+
/*!
|
165
|
+
@typedef
|
166
|
+
|
167
|
+
@abstract Block type used to define blocks called by <FBSession> for state updates
|
168
|
+
@discussion See https://developers.facebook.com/docs/technical-guides/iossdk/errors/
|
169
|
+
for error handling best practices.
|
170
|
+
*/
|
171
|
+
typedef void (^FBSessionStateHandler)(FBSession *session,
|
172
|
+
FBSessionState status,
|
173
|
+
NSError *error);
|
174
|
+
|
175
|
+
/*!
|
176
|
+
@typedef
|
177
|
+
|
178
|
+
@abstract Block type used to define blocks called by <[FBSession requestNewReadPermissions:completionHandler:]>
|
179
|
+
and <[FBSession requestNewPublishPermissions:defaultAudience:completionHandler:]>.
|
180
|
+
|
181
|
+
@discussion See https://developers.facebook.com/docs/technical-guides/iossdk/errors/
|
182
|
+
for error handling best practices.
|
183
|
+
*/
|
184
|
+
typedef void (^FBSessionRequestPermissionResultHandler)(FBSession *session,
|
185
|
+
NSError *error);
|
186
|
+
|
187
|
+
/*!
|
188
|
+
@typedef
|
189
|
+
|
190
|
+
@abstract Block type used to define blocks called by <[FBSession reauthorizeWithPermissions]>.
|
191
|
+
|
192
|
+
@discussion You should use the preferred FBSessionRequestPermissionHandler typedef rather than
|
193
|
+
this synonym, which has been deprecated.
|
194
|
+
*/
|
195
|
+
typedef FBSessionRequestPermissionResultHandler FBSessionReauthorizeResultHandler __attribute__((deprecated));
|
196
|
+
|
197
|
+
/*!
|
198
|
+
@typedef
|
199
|
+
|
200
|
+
@abstract Block type used to define blocks called for system credential renewals.
|
201
|
+
@discussion
|
202
|
+
*/
|
203
|
+
typedef void (^FBSessionRenewSystemCredentialsHandler)(ACAccountCredentialRenewResult result, NSError *error) ;
|
204
|
+
|
205
|
+
/*!
|
206
|
+
@class FBSession
|
207
|
+
|
208
|
+
@abstract
|
209
|
+
The `FBSession` object is used to authenticate a user and manage the user's session. After
|
210
|
+
initializing a `FBSession` object the Facebook App ID and desired permissions are stored.
|
211
|
+
Opening the session will initiate the authentication flow after which a valid user session
|
212
|
+
should be available and subsequently cached. Closing the session can optionally clear the
|
213
|
+
cache.
|
214
|
+
|
215
|
+
If an <FBRequest> request requires user authorization then an `FBSession` object should be used.
|
216
|
+
|
217
|
+
|
218
|
+
@discussion
|
219
|
+
Instances of the `FBSession` class provide notification of state changes in the following ways:
|
220
|
+
|
221
|
+
1. Callers of certain `FBSession` methods may provide a block that will be called
|
222
|
+
back in the course of state transitions for the session (e.g. login or session closed).
|
223
|
+
|
224
|
+
2. The object supports Key-Value Observing (KVO) for property changes.
|
225
|
+
*/
|
226
|
+
@interface FBSession : NSObject
|
227
|
+
|
228
|
+
/*!
|
229
|
+
@methodgroup Creating a session
|
230
|
+
*/
|
231
|
+
|
232
|
+
/*!
|
233
|
+
@method
|
234
|
+
|
235
|
+
@abstract
|
236
|
+
Returns a newly initialized Facebook session with default values for the parameters
|
237
|
+
to <initWithAppID:permissions:urlSchemeSuffix:tokenCacheStrategy:>.
|
238
|
+
*/
|
239
|
+
- (id)init;
|
240
|
+
|
241
|
+
/*!
|
242
|
+
@method
|
243
|
+
|
244
|
+
@abstract
|
245
|
+
Returns a newly initialized Facebook session with the specified permissions and other
|
246
|
+
default values for parameters to <initWithAppID:permissions:urlSchemeSuffix:tokenCacheStrategy:>.
|
247
|
+
|
248
|
+
@param permissions An array of strings representing the permissions to request during the
|
249
|
+
authentication flow. A value of nil indicates basic permissions. The default is nil.
|
250
|
+
|
251
|
+
@discussion
|
252
|
+
It is required that any single permission request request (including initial log in) represent read-only permissions
|
253
|
+
or publish permissions only; not both. The permissions passed here should reflect this requirement.
|
254
|
+
|
255
|
+
*/
|
256
|
+
- (id)initWithPermissions:(NSArray*)permissions;
|
257
|
+
|
258
|
+
/*!
|
259
|
+
@method
|
260
|
+
|
261
|
+
@abstract
|
262
|
+
Following are the descriptions of the arguments along with their
|
263
|
+
defaults when ommitted.
|
264
|
+
|
265
|
+
@param permissions An array of strings representing the permissions to request during the
|
266
|
+
authentication flow. A value of nil indicates basic permissions. The default is nil.
|
267
|
+
@param appID The Facebook App ID for the session. If nil is passed in the default App ID will be obtained from a call to <[FBSession defaultAppID]>. The default is nil.
|
268
|
+
@param urlSchemeSuffix The URL Scheme Suffix to be used in scenarious where multiple iOS apps use one Facebook App ID. A value of nil indicates that this information should be pulled from the plist. The default is nil.
|
269
|
+
@param tokenCachingStrategy Specifies a key name to use for cached token information in NSUserDefaults, nil
|
270
|
+
indicates a default value of @"FBAccessTokenInformationKey".
|
271
|
+
|
272
|
+
@discussion
|
273
|
+
It is required that any single permission request request (including initial log in) represent read-only permissions
|
274
|
+
or publish permissions only; not both. The permissions passed here should reflect this requirement.
|
275
|
+
*/
|
276
|
+
- (id)initWithAppID:(NSString*)appID
|
277
|
+
permissions:(NSArray*)permissions
|
278
|
+
urlSchemeSuffix:(NSString*)urlSchemeSuffix
|
279
|
+
tokenCacheStrategy:(FBSessionTokenCachingStrategy*)tokenCachingStrategy;
|
280
|
+
|
281
|
+
/*!
|
282
|
+
@method
|
283
|
+
|
284
|
+
@abstract
|
285
|
+
Following are the descriptions of the arguments along with their
|
286
|
+
defaults when ommitted.
|
287
|
+
|
288
|
+
@param permissions An array of strings representing the permissions to request during the
|
289
|
+
authentication flow. A value of nil indicates basic permissions. The default is nil.
|
290
|
+
@param defaultAudience Most applications use FBSessionDefaultAudienceNone here, only specifying an audience when using reauthorize to request publish permissions.
|
291
|
+
@param appID The Facebook App ID for the session. If nil is passed in the default App ID will be obtained from a call to <[FBSession defaultAppID]>. The default is nil.
|
292
|
+
@param urlSchemeSuffix The URL Scheme Suffix to be used in scenarious where multiple iOS apps use one Facebook App ID. A value of nil indicates that this information should be pulled from the plist. The default is nil.
|
293
|
+
@param tokenCachingStrategy Specifies a key name to use for cached token information in NSUserDefaults, nil
|
294
|
+
indicates a default value of @"FBAccessTokenInformationKey".
|
295
|
+
|
296
|
+
@discussion
|
297
|
+
It is required that any single permission request request (including initial log in) represent read-only permissions
|
298
|
+
or publish permissions only; not both. The permissions passed here should reflect this requirement. If publish permissions
|
299
|
+
are used, then the audience must also be specified.
|
300
|
+
*/
|
301
|
+
- (id)initWithAppID:(NSString*)appID
|
302
|
+
permissions:(NSArray*)permissions
|
303
|
+
defaultAudience:(FBSessionDefaultAudience)defaultAudience
|
304
|
+
urlSchemeSuffix:(NSString*)urlSchemeSuffix
|
305
|
+
tokenCacheStrategy:(FBSessionTokenCachingStrategy*)tokenCachingStrategy;
|
306
|
+
|
307
|
+
// instance readonly properties
|
308
|
+
|
309
|
+
/*! @abstract Indicates whether the session is open and ready for use. */
|
310
|
+
@property(readonly) BOOL isOpen;
|
311
|
+
|
312
|
+
/*! @abstract Detailed session state */
|
313
|
+
@property(readonly) FBSessionState state;
|
314
|
+
|
315
|
+
/*! @abstract Identifies the Facebook app which the session object represents. */
|
316
|
+
@property(readonly, copy) NSString *appID;
|
317
|
+
|
318
|
+
/*! @abstract Identifies the URL Scheme Suffix used by the session. This is used when multiple iOS apps share a single Facebook app ID. */
|
319
|
+
@property(readonly, copy) NSString *urlSchemeSuffix;
|
320
|
+
|
321
|
+
/*! @abstract The access token for the session object.
|
322
|
+
@discussion Deprecated. Use the `accessTokenData` property. */
|
323
|
+
@property(readonly, copy) NSString *accessToken
|
324
|
+
__attribute__((deprecated));
|
325
|
+
|
326
|
+
/*! @abstract The expiration date of the access token for the session object.
|
327
|
+
@discussion Deprecated. Use the `accessTokenData` property. */
|
328
|
+
@property(readonly, copy) NSDate *expirationDate
|
329
|
+
__attribute__((deprecated));
|
330
|
+
|
331
|
+
/*! @abstract The permissions granted to the access token during the authentication flow. */
|
332
|
+
@property(readonly, copy) NSArray *permissions;
|
333
|
+
|
334
|
+
/*! @abstract Specifies the login type used to authenticate the user.
|
335
|
+
@discussion Deprecated. Use the `accessTokenData` property. */
|
336
|
+
@property(readonly) FBSessionLoginType loginType
|
337
|
+
__attribute__((deprecated));
|
338
|
+
|
339
|
+
/*! @abstract Gets the FBAccessTokenData for the session */
|
340
|
+
@property(readonly, copy) FBAccessTokenData *accessTokenData;
|
341
|
+
|
342
|
+
/*!
|
343
|
+
@methodgroup Instance methods
|
344
|
+
*/
|
345
|
+
|
346
|
+
/*!
|
347
|
+
@method
|
348
|
+
|
349
|
+
@abstract Opens a session for the Facebook.
|
350
|
+
|
351
|
+
@discussion
|
352
|
+
A session may not be used with <FBRequest> and other classes in the SDK until it is open. If, prior
|
353
|
+
to calling open, the session is in the <FBSessionStateCreatedTokenLoaded> state, then no UX occurs, and
|
354
|
+
the session becomes available for use. If the session is in the <FBSessionStateCreated> state, prior
|
355
|
+
to calling open, then a call to open causes login UX to occur, either via the Facebook application
|
356
|
+
or via mobile Safari.
|
357
|
+
|
358
|
+
Open may be called at most once and must be called after the `FBSession` is initialized. Open must
|
359
|
+
be called before the session is closed. Calling an open method at an invalid time will result in
|
360
|
+
an exception. The open session methods may be passed a block that will be called back when the session
|
361
|
+
state changes. The block will be released when the session is closed.
|
362
|
+
|
363
|
+
@param handler A block to call with the state changes. The default is nil.
|
364
|
+
*/
|
365
|
+
- (void)openWithCompletionHandler:(FBSessionStateHandler)handler;
|
366
|
+
|
367
|
+
/*!
|
368
|
+
@method
|
369
|
+
|
370
|
+
@abstract Logs a user on to Facebook.
|
371
|
+
|
372
|
+
@discussion
|
373
|
+
A session may not be used with <FBRequest> and other classes in the SDK until it is open. If, prior
|
374
|
+
to calling open, the session is in the <FBSessionStateCreatedTokenLoaded> state, then no UX occurs, and
|
375
|
+
the session becomes available for use. If the session is in the <FBSessionStateCreated> state, prior
|
376
|
+
to calling open, then a call to open causes login UX to occur, either via the Facebook application
|
377
|
+
or via mobile Safari.
|
378
|
+
|
379
|
+
The method may be called at most once and must be called after the `FBSession` is initialized. It must
|
380
|
+
be called before the session is closed. Calling the method at an invalid time will result in
|
381
|
+
an exception. The open session methods may be passed a block that will be called back when the session
|
382
|
+
state changes. The block will be released when the session is closed.
|
383
|
+
|
384
|
+
@param behavior Controls whether to allow, force, or prohibit Facebook Login or Inline Facebook Login. The default
|
385
|
+
is to allow Facebook Login, with fallback to Inline Facebook Login.
|
386
|
+
@param handler A block to call with session state changes. The default is nil.
|
387
|
+
*/
|
388
|
+
- (void)openWithBehavior:(FBSessionLoginBehavior)behavior
|
389
|
+
completionHandler:(FBSessionStateHandler)handler;
|
390
|
+
|
391
|
+
/*!
|
392
|
+
@method
|
393
|
+
|
394
|
+
@abstract Imports an existing access token and opens the session with it.
|
395
|
+
|
396
|
+
@discussion
|
397
|
+
The method attempts to open the session using an existing access token. No UX will occur. If
|
398
|
+
successful, the session with be in an Open state and the method will return YES; otherwise, NO.
|
399
|
+
|
400
|
+
The method may be called at most once and must be called after the `FBSession` is initialized (see below).
|
401
|
+
It must be called before the session is closed. Calling the method at an invalid time will result in
|
402
|
+
an exception. The open session methods may be passed a block that will be called back when the session
|
403
|
+
state changes. The block will be released when the session is closed.
|
404
|
+
|
405
|
+
The initialized session must not have already been initialized from a cache (for example, you could use
|
406
|
+
the `[FBSessionTokenCachingStrategy nullCacheInstance]` instance).
|
407
|
+
|
408
|
+
@param accessTokenData The token data. See `FBAccessTokenData` for construction methods.
|
409
|
+
@param handler A block to call with session state changes. The default is nil.
|
410
|
+
*/
|
411
|
+
- (BOOL)openFromAccessTokenData:(FBAccessTokenData *)accessTokenData completionHandler:(FBSessionStateHandler) handler;
|
412
|
+
|
413
|
+
/*!
|
414
|
+
@abstract
|
415
|
+
Closes the local in-memory session object, but does not clear the persisted token cache.
|
416
|
+
*/
|
417
|
+
- (void)close;
|
418
|
+
|
419
|
+
/*!
|
420
|
+
@abstract
|
421
|
+
Closes the in-memory session, and clears any persisted cache related to the session.
|
422
|
+
*/
|
423
|
+
- (void)closeAndClearTokenInformation;
|
424
|
+
|
425
|
+
/*!
|
426
|
+
@abstract
|
427
|
+
Reauthorizes the session, with additional permissions.
|
428
|
+
|
429
|
+
@param permissions An array of strings representing the permissions to request during the
|
430
|
+
authentication flow. A value of nil indicates basic permissions. The default is nil.
|
431
|
+
@param behavior Controls whether to allow, force, or prohibit Facebook Login. The default
|
432
|
+
is to allow Facebook Login and fall back to Inline Facebook Login if needed.
|
433
|
+
@param handler A block to call with session state changes. The default is nil.
|
434
|
+
|
435
|
+
@discussion Methods and properties that specify permissions without a read or publish
|
436
|
+
qualification are deprecated; use of a read-qualified or publish-qualified alternative is preferred
|
437
|
+
(e.g. reauthorizeWithReadPermissions or reauthorizeWithPublishPermissions)
|
438
|
+
*/
|
439
|
+
- (void)reauthorizeWithPermissions:(NSArray*)permissions
|
440
|
+
behavior:(FBSessionLoginBehavior)behavior
|
441
|
+
completionHandler:(FBSessionReauthorizeResultHandler)handler
|
442
|
+
__attribute__((deprecated));
|
443
|
+
|
444
|
+
/*!
|
445
|
+
@abstract
|
446
|
+
Reauthorizes the session, with additional permissions.
|
447
|
+
|
448
|
+
@param readPermissions An array of strings representing the permissions to request during the
|
449
|
+
authentication flow. A value of nil indicates basic permissions.
|
450
|
+
|
451
|
+
@param handler A block to call with session state changes. The default is nil.
|
452
|
+
|
453
|
+
@discussion This method is a deprecated alias of <[FBSession requestNewReadPermissions:completionHandler:]>. Consider
|
454
|
+
using <[FBSession requestNewReadPermissions:completionHandler:]>, which is preferred for readability.
|
455
|
+
*/
|
456
|
+
- (void)reauthorizeWithReadPermissions:(NSArray*)readPermissions
|
457
|
+
completionHandler:(FBSessionReauthorizeResultHandler)handler
|
458
|
+
__attribute__((deprecated));
|
459
|
+
|
460
|
+
/*!
|
461
|
+
@abstract
|
462
|
+
Reauthorizes the session, with additional permissions.
|
463
|
+
|
464
|
+
@param writePermissions An array of strings representing the permissions to request during the
|
465
|
+
authentication flow.
|
466
|
+
|
467
|
+
@param defaultAudience Specifies the audience for posts.
|
468
|
+
|
469
|
+
@param handler A block to call with session state changes. The default is nil.
|
470
|
+
|
471
|
+
@discussion This method is a deprecated alias of <[FBSession requestNewPublishPermissions:defaultAudience:completionHandler:]>.
|
472
|
+
Consider using <[FBSession requestNewPublishPermissions:defaultAudience:completionHandler:]>, which is preferred for readability.
|
473
|
+
*/
|
474
|
+
- (void)reauthorizeWithPublishPermissions:(NSArray*)writePermissions
|
475
|
+
defaultAudience:(FBSessionDefaultAudience)defaultAudience
|
476
|
+
completionHandler:(FBSessionReauthorizeResultHandler)handler
|
477
|
+
__attribute__((deprecated));
|
478
|
+
|
479
|
+
/*!
|
480
|
+
@abstract
|
481
|
+
Requests new or additional read permissions for the session.
|
482
|
+
|
483
|
+
@param readPermissions An array of strings representing the permissions to request during the
|
484
|
+
authentication flow. A value of nil indicates basic permissions.
|
485
|
+
|
486
|
+
@param handler A block to call with session state changes. The default is nil.
|
487
|
+
|
488
|
+
@discussion The handler, if non-nil, is called once the operation has completed or failed. This is in contrast to the
|
489
|
+
state completion handler used in <[FBSession openWithCompletionHandler:]> (and other `open*` methods) which is called
|
490
|
+
for each state-change for the session.
|
491
|
+
*/
|
492
|
+
- (void)requestNewReadPermissions:(NSArray*)readPermissions
|
493
|
+
completionHandler:(FBSessionRequestPermissionResultHandler)handler;
|
494
|
+
|
495
|
+
/*!
|
496
|
+
@abstract
|
497
|
+
Requests new or additional write permissions for the session.
|
498
|
+
|
499
|
+
@param writePermissions An array of strings representing the permissions to request during the
|
500
|
+
authentication flow.
|
501
|
+
|
502
|
+
@param defaultAudience Specifies the audience for posts.
|
503
|
+
|
504
|
+
@param handler A block to call with session state changes. The default is nil.
|
505
|
+
|
506
|
+
@discussion The handler, if non-nil, is called once the operation has completed or failed. This is in contrast to the
|
507
|
+
state completion handler used in <[FBSession openWithCompletionHandler:]> (and other `open*` methods) which is called
|
508
|
+
for each state-change for the session.
|
509
|
+
*/
|
510
|
+
- (void)requestNewPublishPermissions:(NSArray*)writePermissions
|
511
|
+
defaultAudience:(FBSessionDefaultAudience)defaultAudience
|
512
|
+
completionHandler:(FBSessionRequestPermissionResultHandler)handler;
|
513
|
+
|
514
|
+
/*!
|
515
|
+
@abstract
|
516
|
+
A helper method that is used to provide an implementation for
|
517
|
+
[UIApplicationDelegate application:openURL:sourceApplication:annotation:]. It should be invoked during
|
518
|
+
the Facebook Login flow and will update the session information based on the incoming URL.
|
519
|
+
|
520
|
+
@param url The URL as passed to [UIApplicationDelegate application:openURL:sourceApplication:annotation:].
|
521
|
+
*/
|
522
|
+
- (BOOL)handleOpenURL:(NSURL*)url;
|
523
|
+
|
524
|
+
/*!
|
525
|
+
@abstract
|
526
|
+
A helper method that is used to provide an implementation for
|
527
|
+
[UIApplicationDelegate applicationDidBecomeActive:] to properly resolve session state for
|
528
|
+
the Facebook Login flow, specifically to support app-switch login.
|
529
|
+
*/
|
530
|
+
- (void)handleDidBecomeActive;
|
531
|
+
|
532
|
+
/*!
|
533
|
+
@methodgroup Class methods
|
534
|
+
*/
|
535
|
+
|
536
|
+
/*!
|
537
|
+
@abstract
|
538
|
+
This is the simplest method for opening a session with Facebook. Using sessionOpen logs on a user,
|
539
|
+
and sets the static activeSession which becomes the default session object for any Facebook UI widgets
|
540
|
+
used by the application. This session becomes the active session, whether open succeeds or fails.
|
541
|
+
|
542
|
+
Note, if there is not a cached token available, this method will present UI to the user in order to
|
543
|
+
open the session via explicit login by the user.
|
544
|
+
|
545
|
+
@param allowLoginUI Sometimes it is useful to attempt to open a session, but only if
|
546
|
+
no login UI will be required to accomplish the operation. For example, at application startup it may not
|
547
|
+
be disirable to transition to login UI for the user, and yet an open session is desired so long as a cached
|
548
|
+
token can be used to open the session. Passing NO to this argument, assures the method will not present UI
|
549
|
+
to the user in order to open the session.
|
550
|
+
|
551
|
+
@discussion
|
552
|
+
Returns YES if the session was opened synchronously without presenting UI to the user. This occurs
|
553
|
+
when there is a cached token available from a previous run of the application. If NO is returned, this indicates
|
554
|
+
that the session was not immediately opened, via cache. However, if YES was passed as allowLoginUI, then it is
|
555
|
+
possible that the user will login, and the session will become open asynchronously. The primary use for
|
556
|
+
this return value is to switch-on facebook capabilities in your UX upon startup, in the case were the session
|
557
|
+
is opened via cache.
|
558
|
+
*/
|
559
|
+
+ (BOOL)openActiveSessionWithAllowLoginUI:(BOOL)allowLoginUI;
|
560
|
+
|
561
|
+
/*!
|
562
|
+
@abstract
|
563
|
+
This is a simple method for opening a session with Facebook. Using sessionOpen logs on a user,
|
564
|
+
and sets the static activeSession which becomes the default session object for any Facebook UI widgets
|
565
|
+
used by the application. This session becomes the active session, whether open succeeds or fails.
|
566
|
+
|
567
|
+
@param permissions An array of strings representing the permissions to request during the
|
568
|
+
authentication flow. A value of nil indicates basic permissions. A nil value specifies
|
569
|
+
default permissions.
|
570
|
+
|
571
|
+
@param allowLoginUI Sometimes it is useful to attempt to open a session, but only if
|
572
|
+
no login UI will be required to accomplish the operation. For example, at application startup it may not
|
573
|
+
be desirable to transition to login UI for the user, and yet an open session is desired so long as a cached
|
574
|
+
token can be used to open the session. Passing NO to this argument, assures the method will not present UI
|
575
|
+
to the user in order to open the session.
|
576
|
+
|
577
|
+
@param handler Many applications will benefit from notification when a session becomes invalid
|
578
|
+
or undergoes other state transitions. If a block is provided, the FBSession
|
579
|
+
object will call the block each time the session changes state.
|
580
|
+
|
581
|
+
@discussion
|
582
|
+
Returns true if the session was opened synchronously without presenting UI to the user. This occurs
|
583
|
+
when there is a cached token available from a previous run of the application. If NO is returned, this indicates
|
584
|
+
that the session was not immediately opened, via cache. However, if YES was passed as allowLoginUI, then it is
|
585
|
+
possible that the user will login, and the session will become open asynchronously. The primary use for
|
586
|
+
this return value is to switch-on facebook capabilities in your UX upon startup, in the case were the session
|
587
|
+
is opened via cache.
|
588
|
+
|
589
|
+
It is required that initial permissions requests represent read-only permissions only. If publish
|
590
|
+
permissions are needed, you may use reauthorizeWithPermissions to specify additional permissions as
|
591
|
+
well as an audience. Use of this method will result in a legacy fast-app-switch Facebook Login due to
|
592
|
+
the requirement to seperate read and publish permissions for newer applications. Methods and properties
|
593
|
+
that specify permissions without a read or publish qualification are deprecated; use of a read-qualified
|
594
|
+
or publish-qualified alternative is preferred.
|
595
|
+
*/
|
596
|
+
+ (BOOL)openActiveSessionWithPermissions:(NSArray*)permissions
|
597
|
+
allowLoginUI:(BOOL)allowLoginUI
|
598
|
+
completionHandler:(FBSessionStateHandler)handler
|
599
|
+
__attribute__((deprecated));
|
600
|
+
|
601
|
+
/*!
|
602
|
+
@abstract
|
603
|
+
This is a simple method for opening a session with Facebook. Using sessionOpen logs on a user,
|
604
|
+
and sets the static activeSession which becomes the default session object for any Facebook UI widgets
|
605
|
+
used by the application. This session becomes the active session, whether open succeeds or fails.
|
606
|
+
|
607
|
+
@param readPermissions An array of strings representing the read permissions to request during the
|
608
|
+
authentication flow. A value of nil indicates basic permissions. It is not allowed to pass publish
|
609
|
+
permissions to this method.
|
610
|
+
|
611
|
+
@param allowLoginUI Sometimes it is useful to attempt to open a session, but only if
|
612
|
+
no login UI will be required to accomplish the operation. For example, at application startup it may not
|
613
|
+
be desirable to transition to login UI for the user, and yet an open session is desired so long as a cached
|
614
|
+
token can be used to open the session. Passing NO to this argument, assures the method will not present UI
|
615
|
+
to the user in order to open the session.
|
616
|
+
|
617
|
+
@param handler Many applications will benefit from notification when a session becomes invalid
|
618
|
+
or undergoes other state transitions. If a block is provided, the FBSession
|
619
|
+
object will call the block each time the session changes state.
|
620
|
+
|
621
|
+
@discussion
|
622
|
+
Returns true if the session was opened synchronously without presenting UI to the user. This occurs
|
623
|
+
when there is a cached token available from a previous run of the application. If NO is returned, this indicates
|
624
|
+
that the session was not immediately opened, via cache. However, if YES was passed as allowLoginUI, then it is
|
625
|
+
possible that the user will login, and the session will become open asynchronously. The primary use for
|
626
|
+
this return value is to switch-on facebook capabilities in your UX upon startup, in the case were the session
|
627
|
+
is opened via cache.
|
628
|
+
|
629
|
+
*/
|
630
|
+
+ (BOOL)openActiveSessionWithReadPermissions:(NSArray*)readPermissions
|
631
|
+
allowLoginUI:(BOOL)allowLoginUI
|
632
|
+
completionHandler:(FBSessionStateHandler)handler;
|
633
|
+
|
634
|
+
/*!
|
635
|
+
@abstract
|
636
|
+
This is a simple method for opening a session with Facebook. Using sessionOpen logs on a user,
|
637
|
+
and sets the static activeSession which becomes the default session object for any Facebook UI widgets
|
638
|
+
used by the application. This session becomes the active session, whether open succeeds or fails.
|
639
|
+
|
640
|
+
@param publishPermissions An array of strings representing the publish permissions to request during the
|
641
|
+
authentication flow.
|
642
|
+
|
643
|
+
@param defaultAudience Anytime an app publishes on behalf of a user, the post must have an audience (e.g. me, my friends, etc.)
|
644
|
+
The default audience is used to notify the user of the cieling that the user agrees to grant to the app for the provided permissions.
|
645
|
+
|
646
|
+
@param allowLoginUI Sometimes it is useful to attempt to open a session, but only if
|
647
|
+
no login UI will be required to accomplish the operation. For example, at application startup it may not
|
648
|
+
be desirable to transition to login UI for the user, and yet an open session is desired so long as a cached
|
649
|
+
token can be used to open the session. Passing NO to this argument, assures the method will not present UI
|
650
|
+
to the user in order to open the session.
|
651
|
+
|
652
|
+
@param handler Many applications will benefit from notification when a session becomes invalid
|
653
|
+
or undergoes other state transitions. If a block is provided, the FBSession
|
654
|
+
object will call the block each time the session changes state.
|
655
|
+
|
656
|
+
@discussion
|
657
|
+
Returns true if the session was opened synchronously without presenting UI to the user. This occurs
|
658
|
+
when there is a cached token available from a previous run of the application. If NO is returned, this indicates
|
659
|
+
that the session was not immediately opened, via cache. However, if YES was passed as allowLoginUI, then it is
|
660
|
+
possible that the user will login, and the session will become open asynchronously. The primary use for
|
661
|
+
this return value is to switch-on facebook capabilities in your UX upon startup, in the case were the session
|
662
|
+
is opened via cache.
|
663
|
+
|
664
|
+
*/
|
665
|
+
+ (BOOL)openActiveSessionWithPublishPermissions:(NSArray*)publishPermissions
|
666
|
+
defaultAudience:(FBSessionDefaultAudience)defaultAudience
|
667
|
+
allowLoginUI:(BOOL)allowLoginUI
|
668
|
+
completionHandler:(FBSessionStateHandler)handler;
|
669
|
+
|
670
|
+
/*!
|
671
|
+
@abstract
|
672
|
+
An application may get or set the current active session. Certain high-level components in the SDK
|
673
|
+
will use the activeSession to set default session (e.g. `FBLoginView`, `FBFriendPickerViewController`)
|
674
|
+
|
675
|
+
@discussion
|
676
|
+
If sessionOpen* is called, the resulting `FBSession` object also becomes the activeSession. If another
|
677
|
+
session was active at the time, it is closed automatically. If activeSession is called when no session
|
678
|
+
is active, a session object is instatiated and returned; in this case open must be called on the session
|
679
|
+
in order for it to be useable for communication with Facebook.
|
680
|
+
*/
|
681
|
+
+ (FBSession*)activeSession;
|
682
|
+
|
683
|
+
/*!
|
684
|
+
@abstract
|
685
|
+
An application may get or set the current active session. Certain high-level components in the SDK
|
686
|
+
will use the activeSession to set default session (e.g. `FBLoginView`, `FBFriendPickerViewController`)
|
687
|
+
|
688
|
+
@param session The FBSession object to become the active session
|
689
|
+
|
690
|
+
@discussion
|
691
|
+
If an application prefers the flexibilility of directly instantiating a session object, an active
|
692
|
+
session can be set directly.
|
693
|
+
*/
|
694
|
+
+ (FBSession*)setActiveSession:(FBSession*)session;
|
695
|
+
|
696
|
+
/*!
|
697
|
+
@method
|
698
|
+
|
699
|
+
@abstract Set the default Facebook App ID to use for sessions. The app ID may be
|
700
|
+
overridden on a per session basis.
|
701
|
+
|
702
|
+
@param appID The default Facebook App ID to use for <FBSession> methods.
|
703
|
+
*/
|
704
|
+
+ (void)setDefaultAppID:(NSString*)appID;
|
705
|
+
|
706
|
+
/*!
|
707
|
+
@method
|
708
|
+
|
709
|
+
@abstract Get the default Facebook App ID to use for sessions. If not explicitly
|
710
|
+
set, the default will be read from the application's plist. The app ID may be
|
711
|
+
overridden on a per session basis.
|
712
|
+
*/
|
713
|
+
+ (NSString*)defaultAppID;
|
714
|
+
|
715
|
+
/*!
|
716
|
+
@method
|
717
|
+
|
718
|
+
@abstract Set the default url scheme suffix to use for sessions. The url
|
719
|
+
scheme suffix may be overridden on a per session basis.
|
720
|
+
|
721
|
+
@param urlSchemeSuffix The default url scheme suffix to use for <FBSession> methods.
|
722
|
+
*/
|
723
|
+
+ (void)setDefaultUrlSchemeSuffix:(NSString*)urlSchemeSuffix;
|
724
|
+
|
725
|
+
/*!
|
726
|
+
@method
|
727
|
+
|
728
|
+
@abstract Get the default url scheme suffix used for sessions. If not
|
729
|
+
explicitly set, the default will be read from the application's plist. The
|
730
|
+
url scheme suffix may be overridden on a per session basis.
|
731
|
+
*/
|
732
|
+
+ (NSString*)defaultUrlSchemeSuffix;
|
733
|
+
|
734
|
+
/*!
|
735
|
+
@method
|
736
|
+
|
737
|
+
@abstract Issues an asychronous renewCredentialsForAccount call to the device Facebook account store.
|
738
|
+
|
739
|
+
@param handler The completion handler to call when the renewal is completed. The handler will be
|
740
|
+
invoked on the main thread.
|
741
|
+
|
742
|
+
@discussion This can be used to explicitly renew account credentials on iOS 6 devices and is provided
|
743
|
+
as a convenience wrapper around `[ACAccountStore renewCredentialsForAccount:completion]`. Note the
|
744
|
+
method will not issue the renewal call if the the Facebook account has not been set on the device, or
|
745
|
+
if access had not been granted to the account (though the handler wil receive an error).
|
746
|
+
|
747
|
+
This is safe to call (and will surface an error to the handler) on versions of iOS before 6 or if the user
|
748
|
+
logged in via Safari or Facebook SSO.
|
749
|
+
*/
|
750
|
+
+ (void)renewSystemCredentials:(FBSessionRenewSystemCredentialsHandler)handler;
|
751
|
+
@end
|