| | |
| | | |
| | | #import <Foundation/Foundation.h> |
| | | |
| | | #import <FBSDKCoreKit/FBSDKAccessToken.h> |
| | | |
| | | #import <FBSDKShareKit/FBSDKShareOpenGraphObject.h> |
| | | #import <FBSDKShareKit/FBSDKSharing.h> |
| | | |
| | | /*! |
| | | @abstract A utility class for sharing through the graph API. Using this class requires an access token in |
| | | [FBSDKAccessToken currentAccessToken] that has been granted the "publish_actions" permission. |
| | | @discussion FBSDKShareAPI network requests are scheduled on the current run loop in the default run loop mode |
| | | (like NSURLConnection). If you want to use FBSDKShareAPI in a background thread, you must manage the run loop |
| | | NS_ASSUME_NONNULL_BEGIN |
| | | |
| | | /** |
| | | A utility class for sharing through the graph API. Using this class requires an access token that |
| | | has been granted the "publish_actions" permission. |
| | | |
| | | FBSDKShareAPI network requests are scheduled on the current run loop in the default run loop mode. |
| | | If you want to use FBSDKShareAPI in a background thread, you must manage the run loop |
| | | yourself. |
| | | */ |
| | | NS_SWIFT_NAME(ShareAPI) |
| | | @interface FBSDKShareAPI : NSObject <FBSDKSharing> |
| | | |
| | | /*! |
| | | @abstract Convenience method to build up a share API with content and a delegate. |
| | | - (instancetype)init NS_DESIGNATED_INITIALIZER |
| | | NS_SWIFT_UNAVAILABLE("Use init(content:delegate:) instead"); |
| | | + (instancetype)new NS_UNAVAILABLE; |
| | | |
| | | /** |
| | | Convenience method to build up a share API with content and a delegate. |
| | | @param content The content to be shared. |
| | | @param delegate The receiver's delegate. |
| | | */ |
| | | + (instancetype)shareWithContent:(id<FBSDKSharingContent>)content delegate:(id<FBSDKSharingDelegate>)delegate; |
| | | + (instancetype)apiWithContent:(id<FBSDKSharingContent>)content |
| | | delegate:(nullable id<FBSDKSharingDelegate>)delegate |
| | | NS_SWIFT_NAME(init(content:delegate:)); |
| | | |
| | | /*! |
| | | @abstract The message the person has provided through the custom dialog that will accompany the share content. |
| | | /** |
| | | Convenience method to build up and share a share API with content and a delegate. |
| | | @param content The content to be shared. |
| | | @param delegate The receiver's delegate. |
| | | */ |
| | | @property (nonatomic, copy) NSString *message; |
| | | + (instancetype)shareWithContent:(id<FBSDKSharingContent>)content |
| | | delegate:(nullable id<FBSDKSharingDelegate>)delegate |
| | | NS_SWIFT_UNAVAILABLE("Use init(content:delegate:).share() instead"); |
| | | |
| | | /*! |
| | | @abstract The graph node to which content should be shared. |
| | | /** |
| | | The message the person has provided through the custom dialog that will accompany the share content. |
| | | */ |
| | | @property (nonatomic, copy, nullable) NSString *message; |
| | | |
| | | /** |
| | | The graph node to which content should be shared. |
| | | */ |
| | | @property (nonatomic, copy) NSString *graphNode; |
| | | |
| | | /*! |
| | | @abstract A Boolean value that indicates whether the receiver can send the share. |
| | | @discussion May return NO if the appropriate Facebook app is not installed and is required or an access token is |
| | | /** |
| | | The access token used when performing a share. The access token must have the "publish_actions" |
| | | permission granted. |
| | | |
| | | Defaults to [FBSDKAccessToken currentAccessToken]. Setting this to nil will revert the access token to |
| | | [FBSDKAccessToken currentAccessToken]. |
| | | */ |
| | | @property (nonatomic, strong, nullable) FBSDKAccessToken *accessToken; |
| | | |
| | | /** |
| | | A Boolean value that indicates whether the receiver can send the share. |
| | | |
| | | May return NO if the appropriate Facebook app is not installed and is required or an access token is |
| | | required but not available. This method does not validate the content on the receiver, so this can be checked before |
| | | building up the content. |
| | | @see [FBSDKSharing validateWithError:] |
| | | @result YES if the receiver can send, otherwise NO. |
| | | */ |
| | | - (BOOL)canShare; |
| | | |
| | | /*! |
| | | @abstract Creates an User Owned Open Graph object without an action. |
| | | @see [FBSDKSharing validateWithError:] |
| | | @return YES if the receiver can send, otherwise NO. |
| | | */ |
| | | @property (nonatomic, readonly) BOOL canShare; |
| | | |
| | | /** |
| | | Creates an User Owned Open Graph object without an action. |
| | | @param openGraphObject The open graph object to create. |
| | | @discussion Use this method to create an object alone, when an action is not going to be posted with the object. If |
| | | |
| | | Use this method to create an object alone, when an action is not going to be posted with the object. If |
| | | the object will be used within an action, just put the object in the action and share that as the shareContent and the |
| | | object will be created in the process. The delegate will be messaged with the results. |
| | | |
| | | Also see https://developers.facebook.com/docs/sharing/opengraph/object-api#objectapi-creatinguser |
| | | |
| | | @result YES if the receiver was able to send the request to create the object, otherwise NO. |
| | | @return YES if the receiver was able to send the request to create the object, otherwise NO. |
| | | */ |
| | | - (BOOL)createOpenGraphObject:(FBSDKShareOpenGraphObject *)openGraphObject; |
| | | |
| | | /*! |
| | | @abstract Begins the send from the receiver. |
| | | @result YES if the receiver was able to send the share, otherwise NO. |
| | | /** |
| | | Begins the send from the receiver. |
| | | @return YES if the receiver was able to send the share, otherwise NO. |
| | | */ |
| | | - (BOOL)share; |
| | | |
| | | @end |
| | | |
| | | NS_ASSUME_NONNULL_END |