当用户通过Facebook或Tweeter分享我的应用时,是否有这样的功能可以解锁?
像这样:
1)用户点击我的应用程序中的“分享”按钮
2)然后我的应用程序在用户的Facebook
的墙上发布(共享或广告)3)某些功能在我的应用中解锁
答案 0 :(得分:-1)
请参阅iOS Facebook Tutorial,了解其在facebook上的完成情况。
在应用程序端,您可以在NSUserDefaults上设置一个标志,或者写入应用程序文件系统以检查该功能是否已解锁。
答案 1 :(得分:-1)
您可以使用Facebook共享delegate
方法来了解用户是否已成功共享或不是。
以下是FB开发人员链接,根据您的要求显示各种共享方法。
https://developers.facebook.com/docs/sharing/ios
以下是您可以了解共享状态的方法
- (void)sharer:(id<FBSDKSharing>)sharer didCompleteWithResults:(NSDictionary *)results{
//UNLOCK THE APP FEATURE IN THIS METHOD
}
- (void)sharerDidCancel:(id<FBSDKSharing>)sharer{
}
- (void)sharer:(id<FBSDKSharing>)sharer didFailWithError:(NSError *)error{
NSLog(@"%@",error);
}
答案 2 :(得分:-1)
使用UIActivityViewController及其完成处理程序可以相对轻松地完成此操作。
NSString *message = @"my app is awesome.";
NSURL *link = [NSURL URLWithString:@"awesomeapp.com"];
UIActivityViewController *shareController = [[UIActivityViewController alloc] initWithActivityItems:@[message, link]
applicationActivities:nil];
//add whatever you don't want
shareController.excludedActivityTypes = @[UIActivityTypeMessage];
shareController.completionWithItemsHandler =
^(NSString *activityType, BOOL completed, NSArray *returnedItems, NSError *activityError) {
//Share wasn't completed, don't unlock
if (!completed || activityError) {
return;
}
//Facebook or Twitter
if ([activityType isEqualToString:UIActivityTypePostToFacebook] ||
[activityType isEqualToString:UIActivityTypePostToTwitter]) {
//Unlock item logic
}
};
[self presentViewController:shareController animated:YES completion:^{
//Whatever
}];