hank
2017-04-28 706ba043d6c5dbda372b898faee3ae72e5efda4c
commit | author | age
bad748 1 // Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
W 2 //
3 // You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
4 // copy, modify, and distribute this software in source code or binary form for use
5 // in connection with the web services and APIs provided by Facebook.
6 //
7 // As with any software that integrates with the Facebook platform, your use of
8 // this software is subject to the Facebook Developer Principles and Policies
9 // [http://developers.facebook.com/policy/]. This copyright notice shall be
10 // included in all copies or substantial portions of the software.
11 //
12 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
14 // FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
15 // COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
16 // IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
17 // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18
19 #import <UIKit/UIKit.h>
20
21 #import <FBSDKCoreKit/FBSDKMacros.h>
22
23 /*
24  * Constants defining logging behavior.  Use with <[FBSDKSettings setLoggingBehavior]>.
25  */
26
9febd9 27 /** Include access token in logging. */
bad748 28 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorAccessTokens;
W 29
9febd9 30 /** Log performance characteristics */
bad748 31 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorPerformanceCharacteristics;
W 32
9febd9 33 /** Log FBSDKAppEvents interactions */
bad748 34 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorAppEvents;
W 35
9febd9 36 /** Log Informational occurrences */
bad748 37 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorInformational;
W 38
9febd9 39 /** Log cache errors. */
bad748 40 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorCacheErrors;
W 41
9febd9 42 /** Log errors from SDK UI controls */
bad748 43 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorUIControlErrors;
W 44
9febd9 45 /** Log debug warnings from API response, i.e. when friends fields requested, but user_friends permission isn't granted. */
bad748 46 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorGraphAPIDebugWarning;
W 47
9febd9 48 /** Log warnings from API response, i.e. when requested feature will be deprecated in next version of API.
bad748 49  Info is the lowest level of severity, using it will result in logging all previously mentioned levels.
W 50  */
51 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorGraphAPIDebugInfo;
52
9febd9 53 /** Log errors from SDK network requests */
bad748 54 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorNetworkRequests;
W 55
9febd9 56 /** Log errors likely to be preventable by the developer. This is in the default set of enabled logging behaviors. */
bad748 57 FBSDK_EXTERN NSString *const FBSDKLoggingBehaviorDeveloperErrors;
W 58
59 @interface FBSDKSettings : NSObject
60
9febd9 61 /**
W 62   Get the Facebook App ID used by the SDK.
63
64  If not explicitly set, the default will be read from the application's plist (FacebookAppID).
bad748 65  */
W 66 + (NSString *)appID;
67
9febd9 68 /**
W 69   Set the Facebook App ID to be used by the SDK.
70  - Parameter appID: The Facebook App ID to be used by the SDK.
bad748 71  */
W 72 + (void)setAppID:(NSString *)appID;
73
9febd9 74 /**
W 75   Get the default url scheme suffix used for sessions.
76
77  If not explicitly set, the default will be read from the application's plist (FacebookUrlSchemeSuffix).
bad748 78  */
W 79 + (NSString *)appURLSchemeSuffix;
80
9febd9 81 /**
W 82   Set the app url scheme suffix used by the SDK.
83  - Parameter appURLSchemeSuffix: The url scheme suffix to be used by the SDK.
bad748 84  */
W 85 + (void)setAppURLSchemeSuffix:(NSString *)appURLSchemeSuffix;
86
9febd9 87 /**
W 88   Retrieve the Client Token that has been set via [FBSDKSettings setClientToken].
89
90  If not explicitly set, the default will be read from the application's plist (FacebookClientToken).
bad748 91  */
W 92 + (NSString *)clientToken;
93
9febd9 94 /**
W 95   Sets the Client Token for the Facebook App.
96
97  This is needed for certain API calls when made anonymously, without a user-based access token.
98  - Parameter clientToken: The Facebook App's "client token", which, for a given appid can be found in the Security
bad748 99  section of the Advanced tab of the Facebook App settings found at <https://developers.facebook.com/apps/[your-app-id]>
W 100  */
101 + (void)setClientToken:(NSString *)clientToken;
102
9febd9 103 /**
W 104   A convenient way to toggle error recovery for all FBSDKGraphRequest instances created after this is set.
105  - Parameter disableGraphErrorRecovery: YES or NO.
bad748 106  */
W 107 + (void)setGraphErrorRecoveryDisabled:(BOOL)disableGraphErrorRecovery;
108
9febd9 109 /**
W 110   Get the Facebook Display Name used by the SDK.
111
112  If not explicitly set, the default will be read from the application's plist (FacebookDisplayName).
bad748 113  */
W 114 + (NSString *)displayName;
115
9febd9 116 /**
W 117   Set the default Facebook Display Name to be used by the SDK.
118
119   This should match the Display Name that has been set for the app with the corresponding Facebook App ID,
bad748 120  in the Facebook App Dashboard.
9febd9 121  - Parameter displayName: The Facebook Display Name to be used by the SDK.
bad748 122  */
W 123 + (void)setDisplayName:(NSString *)displayName;
124
9febd9 125 /**
W 126   Get the Facebook domain part.
127
128  If not explicitly set, the default will be read from the application's plist (FacebookDomainPart).
bad748 129  */
W 130 + (NSString *)facebookDomainPart;
131
9febd9 132 /**
W 133   Set the subpart of the Facebook domain.
134
135  This can be used to change the Facebook domain (e.g. @"beta") so that requests will be sent to
bad748 136  graph.beta.facebook.com
9febd9 137  - Parameter facebookDomainPart: The domain part to be inserted into facebook.com.
bad748 138  */
W 139 + (void)setFacebookDomainPart:(NSString *)facebookDomainPart;
140
9febd9 141 /**
W 142   The quality of JPEG images sent to Facebook from the SDK.
143
144  If not explicitly set, the default is 0.9.
145
146 - See:[UIImageJPEGRepresentation](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIKitFunctionReference/#//apple_ref/c/func/UIImageJPEGRepresentation) */
bad748 147 + (CGFloat)JPEGCompressionQuality;
W 148
9febd9 149 /**
W 150   Set the quality of JPEG images sent to Facebook from the SDK.
151  - Parameter JPEGCompressionQuality: The quality for JPEG images, expressed as a value from 0.0 to 1.0.
152
153 - See:[UIImageJPEGRepresentation](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIKitFunctionReference/#//apple_ref/c/func/UIImageJPEGRepresentation) */
bad748 154 + (void)setJPEGCompressionQuality:(CGFloat)JPEGCompressionQuality;
W 155
9febd9 156 /**
W 157   Gets whether data such as that generated through FBSDKAppEvents and sent to Facebook should be restricted from being used for other than analytics and conversions.  Defaults to NO.  This value is stored on the device and persists across app launches.
bad748 158  */
W 159 + (BOOL)limitEventAndDataUsage;
160
9febd9 161 /**
W 162   Sets whether data such as that generated through FBSDKAppEvents and sent to Facebook should be restricted from being used for other than analytics and conversions.  Defaults to NO.  This value is stored on the device and persists across app launches.
bad748 163
9febd9 164  - Parameter limitEventAndDataUsage:   The desired value.
bad748 165  */
W 166 + (void)setLimitEventAndDataUsage:(BOOL)limitEventAndDataUsage;
167
9febd9 168 /**
W 169   Retrieve the current iOS SDK version.
bad748 170  */
W 171 + (NSString *)sdkVersion;
172
9febd9 173 /**
W 174   Retrieve the current Facebook SDK logging behavior.
bad748 175  */
W 176 + (NSSet *)loggingBehavior;
177
9febd9 178 /**
W 179   Set the current Facebook SDK logging behavior.  This should consist of strings defined as
bad748 180  constants with FBSDKLoggingBehavior*.
W 181
9febd9 182  - Parameter loggingBehavior: A set of strings indicating what information should be logged.  If nil is provided, the logging
bad748 183  behavior is reset to the default set of enabled behaviors.  Set to an empty set in order to disable all logging.
W 184
9febd9 185
W 186  You can also define this via an array in your app plist with key "FacebookLoggingBehavior" or add and remove individual values via enableLoggingBehavior: or disableLogginBehavior:
bad748 187  */
W 188 + (void)setLoggingBehavior:(NSSet *)loggingBehavior;
189
9febd9 190 /**
W 191   Enable a particular Facebook SDK logging behavior.
bad748 192
9febd9 193  - Parameter loggingBehavior: The LoggingBehavior to enable. This should be a string defined as a constant with FBSDKLoggingBehavior*.
bad748 194  */
W 195 + (void)enableLoggingBehavior:(NSString *)loggingBehavior;
196
9febd9 197 /**
W 198   Disable a particular Facebook SDK logging behavior.
bad748 199
9febd9 200  - Parameter loggingBehavior: The LoggingBehavior to disable. This should be a string defined as a constant with FBSDKLoggingBehavior*.
bad748 201  */
W 202 + (void)disableLoggingBehavior:(NSString *)loggingBehavior;
203
9febd9 204 /**
W 205   Set the user defaults key used by legacy token caches.
bad748 206
9febd9 207  - Parameter tokenInformationKeyName: the key used by legacy token caches.
bad748 208
9febd9 209
W 210  Use this only if you customized FBSessionTokenCachingStrategy in v3.x of
bad748 211   the Facebook SDK for iOS.
W 212 */
213 + (void)setLegacyUserDefaultTokenInformationKeyName:(NSString *)tokenInformationKeyName;
214
9febd9 215 /**
W 216   Get the user defaults key used by legacy token caches.
bad748 217 */
W 218 + (NSString *)legacyUserDefaultTokenInformationKeyName;
219
9febd9 220 /**
W 221   Overrides the default Graph API version to use with `FBSDKGraphRequests`. This overrides `FBSDK_TARGET_PLATFORM_VERSION`.
222
223  The string should be of the form `@"v2.7"`.
224 */
225 + (void)setGraphAPIVersion:(NSString *)version;
226
227 /**
228   Returns the default Graph API version. Defaults to `FBSDK_TARGET_PLATFORM_VERSION`
229 */
230 + (NSString *)graphAPIVersion;
231
bad748 232 @end