Represents an immutable access token for using Facebook services.
Conforms to: | FBSDKCopying, NSSecureCoding |
Superclass: | NSObject |
Declared in: | FBSDKAccessToken.h |
appID
Returns the app ID.
@property (readonly,
copy,
nonatomic) NSString *appID;
FBSDKAccessToken.h
declinedPermissions
Returns the known declined permissions.
@property (readonly,
copy,
nonatomic) NSSet *declinedPermissions;
FBSDKAccessToken.h
expirationDate
Returns the expiration date.
@property (readonly,
copy,
nonatomic) NSDate *expirationDate;
FBSDKAccessToken.h
permissions
Returns the known granted permissions.
@property (readonly,
copy,
nonatomic) NSSet *permissions;
FBSDKAccessToken.h
refreshDate
Returns the date the token was last refreshed.
@property (readonly,
copy,
nonatomic) NSDate *refreshDate;
FBSDKAccessToken.h
tokenString
Returns the opaque token string.
@property (readonly,
copy,
nonatomic) NSString *tokenString;
FBSDKAccessToken.h
userID
Returns the user ID.
@property (readonly,
copy,
nonatomic) NSString *userID;
FBSDKAccessToken.h
currentAccessToken
Returns the "global" access token that represents the currently logged in user.
+ (FBSDKAccessToken *)
currentAccessToken;
The currentAccessToken
is a convenient representation of the token of the
current user and is used by other SDK components (like FBSDKLoginManager
).
FBSDKAccessToken.h
refreshCurrentAccessToken:
Refresh the current access token's permission state and extend the token's expiration date, if possible.
Parameter | Beschreibung |
---|---|
completionHandler | An optional callback handler that can surface any errors related to permission refreshing. |
+ (void)
refreshCurrentAccessToken:(FBSDKGraphRequestHandler)completionHandler;
On a successful refresh, the currentAccessToken will be updated so you typically only need to
observe the FBSDKAccessTokenDidChangeNotification
notification.
If a token is already expired, it cannot be refreshed.
FBSDKAccessToken.h
setCurrentAccessToken:
Sets the "global" access token that represents the currently logged in user.
Parameter | Beschreibung |
---|---|
token | The access token to set. |
+ (void)
setCurrentAccessToken:(FBSDKAccessToken *)token;
This will broadcast a notification and save the token to the app keychain.
FBSDKAccessToken.h
hasGranted:
Convenience getter to determine if a permission has been granted
Parameter | Beschreibung |
---|---|
permission | The permission to check. |
- (BOOL)
hasGranted:(NSString *)permission;
FBSDKAccessToken.h
initWithTokenString:permissions:declinedPermissions:appID:userID:expirationDate:refreshDate:
Initializes a new instance.
Parameter | Beschreibung |
---|---|
tokenString | The opaque token string. |
permissions | The granted permissions. Note this is converted to NSSet and is only an NSArray for the convenience of literal syntax. |
declinedPermissions | The declined permissions. Note this is converted to NSSet and is only an NSArray for the convenience of literal syntax. |
appID | The app ID. |
userID | The user ID. |
expirationDate | The optional expiration date (defaults to distantFuture). |
refreshDate | The optional date the token was last refreshed (defaults to today). |
- (instancetype)
initWithTokenString: | (NSString *)tokenString |
permissions: | (NSArray *)permissions |
declinedPermissions: | (NSArray *)declinedPermissions |
appID: | (NSString *)appID |
userID: | (NSString *)userID |
expirationDate: | (NSDate *)expirationDate |
refreshDate: | (NSDate *)refreshDate |
NS_DESIGNATED_INITIALIZER; |
This initializer should only be used for advanced apps that
manage tokens explicitly. Typical login flows only need to use FBSDKLoginManager
along with +currentAccessToken
.
FBSDKAccessToken.h
isEqualToAccessToken:
Compares the receiver to another FBSDKAccessToken
Parameter | Beschreibung |
---|---|
token | The other token |
- (BOOL)
isEqualToAccessToken:(FBSDKAccessToken *)token;
FBSDKAccessToken.h
FBSDKAccessTokenDidChangeNotification
FBSDK_EXTER N NSString *const FBSDKAccessTokenDidChangeNotification;
The userInfo dictionary of the notification will contain keys
FBSDKAccessTokenChangeOldKey
and
FBSDKAccessTokenChangeNewKey
.
FBSDKAccessToken.h
FBSDKAccessTokenDidChangeUserID
FBSDK_EXTER N NSString *const FBSDKAccessTokenDidChangeUserID;
Token refreshes can occur automatically with the SDK which do not change the user. If you're only interested in user changes (such as logging out), you should check for the existence of this key. The value is a NSNumber with a boolValue. On a fresh start of the app where the SDK reads in the cached value of an access token, this key will also exist since the access token is moving from a null state (no user) to a non-null state (user).
FBSDKAccessToken.h