PFAnonymousUtils

Objective-C

@interface PFAnonymousUtils : NSObject

Swift

class PFAnonymousUtils : NSObject

Provides utility functions for working with Anonymously logged-in users. Anonymous users have some unique characteristics:

  • Anonymous users don’t need a user name or password.
  • Once logged out, an anonymous user cannot be recovered.
  • When the current user is anonymous, the following methods can be used to switch to a different user or convert the anonymous user into a regular one:
  • signUp converts an anonymous user to a standard user with the given username and password. Data associated with the anonymous user is retained.
  • logIn switches users without converting the anonymous user. Data associated with the anonymous user will be lost.
  • Service logIn (e.g. Facebook, Twitter) will attempt to convert the anonymous user into a standard user by linking it to the service. If a user already exists that is linked to the service, it will instead switch to the existing user.
  • Service linking (e.g. Facebook, Twitter) will convert the anonymous user into a standard user by linking it to the service.

Creating an Anonymous User

  • Creates an anonymous user asynchronously and sets as a result to BFTask.

    Declaration

    Objective-C

    + (nonnull BFTask<PFUser *> *)logInInBackground;

    Swift

    class func logInInBackground() -> BFTask<PFUser>

    Return Value

    The task, that encapsulates the work being done.

  • Creates an anonymous user asynchronously and performs a provided block.

    Declaration

    Objective-C

    + (void)logInWithBlock:(nullable PFUserResultBlock)block;

    Swift

    class func logIn() async throws -> PFUser

    Parameters

    block

    The block to execute when anonymous user creation is complete. It should have the following argument signature: ^(PFUser *user, NSError *error).

Determining Whether a User is Anonymous

  • Whether the PFUser object is logged in anonymously.

    Declaration

    Objective-C

    + (BOOL)isLinkedWithUser:(nullable PFUser *)user;

    Swift

    class func isLinked(with user: PFUser?) -> Bool

    Parameters

    user

    PFUser object to check for anonymity. The user must be logged in on this device.

    Return Value

    YES if the user is anonymous. NO if the user is not the current user or is not anonymous.

Creating an Anonymous User

  • Deprecated

    Please use PFAnonymousUtils.+logInWithBlock: instead.

    Creates an anonymous user asynchronously and invokes a selector on a target.

    @deprecated Please use PFAnonymousUtils.+logInWithBlock: instead.

    Declaration

    Objective-C

    + (void)logInWithTarget:(nullable id)target selector:(nullable SEL)selector;

    Swift

    class func logIn(withTarget target: Any?, selector: Selector?)

    Parameters

    target

    Target object for the selector.

    selector

    The selector that will be called when the asynchronous request is complete. It should have the following signature: (void)callbackWithUser:(PFUser *)user error:(NSError *)error.