IOS Post Photo To Facebook Without The Facebook Connect-Api - iphone

Is it possible to post a photo to a Facebook Page wall without using the Facebook connect Api?
To post some text I tried using this:
NSString *post = [NSString stringWithFormat:#"fb://publish/profile/1111111111112311?text=%#",#"some text here"];
NSURL *url = [NSURL URLWithString:post];
thanks

To do this, I would suggest using Sharekit. ShareKit is a free api that allows you to intregrate many sharing feastures for many services, with minimal code (less than 20 lines).
Here is a link to get ShareKit: getsharekit.com
To share a photo on Facebook with Sharekit, do this:
Add sharekit to your project by coping the files found at the link above
Use the following code to set up the share instance:
UIImage *image = [UIImage imageNamed:#"someImage.jpg"];
SHKItem *item = [SHKItem image:image title:#"Look at this picture!"];
Then just share the image with this:
[SHKFacebook shareItem:item];
However, the newest Facebook API is actually pretty easy to use. And it's very well documented, so you might want to check it out. There are some benefits to using Facebook's actually API, rather then use a proxy service.

Related

upload image to facebook wall after posting it to photos using sharekit 2.0

I'm trying to post image to facebook photos using sharekit:
SHKItem *item = [SHKItem image:image_ title:#""];
[SHKFacebook shareItem:item];
Everything works fine but normally when you post photo using facebook website information is posted on faceook's wall also. When I post my photo using sharekit it doesn't happen. How can I achieve this?

Facebook URL Scheme for iOS - post photo

There are many URL schemes that can be used for facebook on iOS.
Is it possible to use one of these URL schemes to post a photo to a fan page?
I was trying to use fb://publish/photo/(initWithUID:)/(aid:)/(pid:) and fb://upload/(initWithSource:)/profile/(uid:) without any luck.
I'm not sure what to use for the initWithSource:.
Has anyone had any success in doing this?
You can use ShareKit framework to share the images to Facebook.
All you need to do is simple as following.
SHKItem *item = [SHKItem image:myImage title:#"Title"];
SHKFacebook *sharer = [[[SHKFacebook alloc] init] autorelease];
[sharer loadItem:item];
[sharer share];
ShareKit is very useful and easy to use.
You can get some idea from here and then merge this code in your own code as per on your requirement Post Photos on fan page

how to retrieve photos from Facebook

i have tied lot to get the uploaded images fom the facebok to a UITableviewcontroller,but i get the profile picture only.i have a image cropping application which can get images from library,from camera,fromfacebook.so when the user tap the Facebook button,it will authenticate and if the authentication success,it will strive the photos from Facebook to UITableview.Is that possible if yes how to do this.
I do have this code:
NSString *url = [[NSString alloc] initWithFormat:#"graph.facebook.com/%#/picture",objectId];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:url]]];
But I'm not sure What is objectID and where can i get it?
Please help me.Thanks in advance.
First you have to get album objects.
How to do that is here: fetching facebook albums from an IOS app
Once you have album objects - each of them contains array of photo objetcs (IDs).
Please take a look at deanWombourne's answer at How to get photos of a facebook album in iPhone SDK?.
And from there on your code should work just fine.

App won't post text on Facebook wall

I'm using ShareKit to public text on user Facebook wall. I have some strange problem, and I couldn't find answer for my questing.
When I tried to post something on wall my app launch Safari/FacebookApp and after I accepted that, I agree to app post things on wall my iPhone back to my app without posting on wall.
Someone have that case?
This is my code:
NSURL *url = [NSURL URLWithString:#"http://xxx.xxx"];
SHKItem *item = [SHKItem URL:url title:#"something"];
//Share the item
[SHKFacebook shareItem:item];
i got same problem. create new app. on facebook solved my problem. create new app and copy new app ID into your project.

iPhone/iOS - How to use "ShareKit" to post only to Facebook or only to Twitter

In my iPhone app, I have two two buttons, labeled "Facebook" and "Twitter".
I want to use the Sharekit framework which makes my sharing very simple. But as shown in the sample code of ShareKit, I can only show many sharing services, which I don't want to include. I want my "Facebook" button to only show the Facebook sharing service, and the same with Twitter. How can I modify ShareKit to work like that?
Update:
Since this answer is still popular, I just wanted to add that with iOS 5 & iOS 6, there is much less need for Sharekit. A lot of popular sharing options are now built into the OS. That being said, this answer is still valid for the sharing services not built into the device, or if your simply more comfortable with Sharekit.
I'll show you how to do it for Facebook, Twitter is exactly the same, just change all the instances of Facebook to Twitter
First, #import "SHKFacebook.h"
then in your button's target method, put the following:
SHKItem *item; //This creates the Sharekit Item
NSURL *url = [NSURL URLWithString:#"http://itunes.apple.com/us/app/...?mt=8"];
The NSURL should be a link to your app on the app store. That way if someone sees a post your app made on Facebook, and they click it, they will be directed to the store so they can download it. Strickly speaking, this is optional, but why wouldn't you try to get new downloads with this extra one line.
Now we need to set up the SHKItem as follows:
item = [SHKItem URL:url title:[NSString stringWithFormat:#"I'm playing someGame on my iPhone! My Highscore is %i, think you can beat it?", highScoreInt]];
Then set up the post like this:
item = [SHKItem URL:url title:#"Share Me!"];
The title parameter is NOT user customizable. Whatever you set here the user will not be able to change. They will have the opportunity to add their own text in addition to whatever you put there.
Finally show the item:
[SHKFacebook shareItem:item];
I hope this helps. As I said, just change the Facebooks in this post to Twitter. Let me know in a comment if you need more help.
Sharekit provides a generic sharing mechanism but also exposes individual services. For instance, if you were to share a URL on twitter, you could write the following code:
#import "ShareKit/Core/SHK.h"
#import "ShareKit/Sharers/Services/Twitter/SHKTwitter.h"
...
SHKItem *item = [SHKItem URL:url title:#"A title"];
[SHKTwitter shareItem:item];
This is all explained in the documentation, but don't fear exploring the header files of the individual services.
I also had the same problem in one of my apps, and tried to force sharekit to do just that.
ShareKit isn't really made for it though, it's meant to be a provide a large range of sharing options - so even after modification, I found that it wasn't a very elegant or efficient solution.
It will save a bit of time, sure - but if you want a good looking, elegant solution I'd suggest integrating twitter and facebook yourself. It takes a bit of time, but you can define the behavior exactly as you want, and theme the interface to suit your app better.