我在我的应用中添加了一些共享,以便用于发布到FaceBook和Twitter。我决定使用社交共享框架,因为它完全符合我的需要并且运作良好。
但是我注意到我的应用程序没有询问用户是否允许它拥有权限,并检查是否有帐户设置。
我在这里看到的问题是由于这个原因 - 我的应用没有出现在设置中 - > Twitter下的“允许这些应用使用您的帐户”部分。
她是我想要共享项目时使用的代码 - 用户点击UIButton
,其中显示了带有各种选项的UIActionSheet“
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]){
SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
SLComposeViewControllerCompletionHandler completionBlock = ^(SLComposeViewControllerResult result){
if (result == SLComposeViewControllerResultCancelled){
NSLog (@"Cancelled");
}else {
NSLog(@"Done");
}
[controller dismissViewControllerAnimated:YES completion:nil];
};
controller.completionHandler = completionBlock;
NSURL *url = [NSURL URLWithString:self.item.url];
/* Adding the text to the Tweet */
[controller setInitialText:@"Online now!"];
[controller addURL:url];
[controller addImage:self.imageView.image];
[self presentViewController:controller animated:YES completion:nil];
}
else {
[self showUserAlert:@"" message:@"Please make sure your FaceBook account has been setup on this device"
delegate:self
cancelButtonTitle:@"Okay"];
}
我如何首先要求访问?并将应用程序添加到iOS的设置部分,以便用户可以打开或关闭它?
答案 0 :(得分:2)
我认为您不需要权限,因为您的应用无法在没有用户操作的情况下发布。用户拥有所有控制权。
您可以使用canSendTweet
中的TWTweetComposeViewController
方法检查是否可以共享。查找Xcode文档。我相信Apple在Facebook上有类似的东西。