我的应用中有一张图片,我想在 FB 上分享。
现在我的 iPhone 上安装了 FB 应用程序。
我想要的是当我在我的应用程序的图像中点击共享时,它应该打开 FB 应用程序并允许我在那里共享我的图像。
是否可以通过外部 FB 应用程序在我们的应用程序中共享图像?
推特也一样,链接也一样?
已解决这是通过使用 ShareKit 解决的。唯一的问题是你不能直接在推特上发布图片。所以你必须在你的服务器上上传图片并将那个 URL 传递给 twitter。Sharekit 摇滚
https://github.com/ShareKit/ShareKit
尝试使用 sharekit 它很有用.. 按照所有步骤进行操作,如果有,请查询而不是回发
阅读这些教程以在 Facebook 上分享图片
http://www.capturetheconversation.com/technology/iphone-facebook-oauth-2-0-and-the-graph-api-a-tutorial-part-2
http://www.raywenderlich.com/1488/how -to-use-facebooks-new-graph-api-from-your-iphone-app,
http://www.raywenderlich.com/1626/how-to-post-to-a-users-wall-upload-photos -and-add-a-like-button-from-your-iphone-app
将 FBConnect 添加到您的项目中,并使用以下代码在 facebook 上共享捕获图像。还将委托 FBSessionDelegate、FBDialogDelegate、FBRequestDelegate 添加到您的 .h 文件中。如果您想共享本地图像而不需要在服务器上上传图像。将 uiimage 对象传递给 facebook 参数。
if (facebook == nil) {
facebook = [[Facebook alloc] initWithAppId:@"your facebook key "];
}
NSArray* permissions = [NSArray arrayWithObjects:
@"publish_stream", @"offline_access", nil] ;
//
[facebook authorize:permissions delegate:self];
- (BOOL) takeScreenshot
{
UIGraphicsBeginImageContext(self.view.frame.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
viewImage,@"message",
nil];
[facebook requestWithGraphPath:@"me/photos" // or use page ID instead of 'me'
andParams:params
andHttpMethod:@"POST"
andDelegate:self];
return YES;
}
#pragma mark -
#pragma mark FBSessionDelegate
/**
* Called when the user has logged in successfully.
*/
- (void)fbDidLogin {
isFBLogged = YES;
[self takeScreenshot];
if([self takeScreenshot])
{
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle: @"Image share sucessfully"
message: nil
delegate: nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert release];
}
else
{
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle: @"Image share unsucessfully"
message: nil
delegate: nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert release];
}
}