Facebook SDK on iOS - iphone

I have a button in my iOS app to share the currently viewed content on facebook. I'm deciding on the permissions needed for the app, it only needs to write links to the stream, and I don't want to access any of the user information, including the Basic Information, that seems enabled by default. How do I disable this?

You can't, connecting through Facebook Connect implies the user allows you're app to access minimal informations
http://developers.facebook.com/docs/authentication/permissions

Related

connect to internet if users like my website

I am building a guest wireless access for a pub. The idea is that users will be granted with internet access if they like they pub's website.
Now I was checking the requirements on facebook to check this and I found this:
Gate access to your app, or some content within your app based on
whether or not someone has liked a page.
NOTE: facebook wifi is not a solution for me hence I am using ubiquiti unifi AP
Does it means that I can't read if my clients like my page in order to allow them to use my wifi? is there a way around it?
If that's the solely purpose of the user_likes permission for your app you will very likely not pass the Login Review process.

Facebook logout when not authorized

I'm building a public installation using an iPad, built as an iOS web app (using the "Add to Home Screen" functionality) which is going to allow users to share content on Facebook.
I'm currently logging the user in to Facebook and getting them to authorize my Facebook app when they click my custom share button. On a successful login, I open Facebook's Feed dialog and allow them to share. Once they have shared (or clicked cancel) I automatically log them out, making sure that the next user that uses the public installation won't be able to share to the previous user's Facebook account.
This all works well, but things get tricky if someone was to hit my custom share button, log in to Facebook and then not allow my app. This would mean that they have logged in, but as they haven't authorized the app, I don't have an access token, and so can't log them out (FB.logout() requires an access token).
Is there a way around this?
Or is there another way that I can log a user out?
Or is there a safe way to allow a user of a public installation (built in HTML) to share on Facebook and be automatically logged out afterwards? Would building a native obj-c app, and using Facebook's iOS SDK help?
The best I can think of is that if the user logs in but doesn't allow the application, they are told that they need to log out, and redirected to Facebook to be able to do this. However this offers them the chance to browse Facebook and (through shared links in their feed) the whole Internet - this isn't acceptable for our installation.
I solved this problem by creating a native iOS app, where the Facebook share link opened in it's own UIWebView. And once the sharing was complete, I deleted all session & cookie information, effectively logging the user out.

Does forge.facebook.authorize open native facebook app?

I've been looking at forge's new APIs (they look awesome)!
For the forge-facebook-API, I was wondering: does it actually open the native facebook app on the phone to ask for permissions?
I've done the ChildBrowser internet login to facebook before, and users are almost never already logged into Facebook Web. It's annoying to make them type in their facebook credentials on the web to use my app.
Yes. This is called SSO. From Forge's docs:
'within each of those sections SSO should also be enabled.'
But facebook has made all this automatic, so its auto enabled (You can't disable it, afaik). So hence yes is the answer to your question.

What kind of Facebook authentication should I be implementing?

I have an app that can be accessed on mobile phones, both iOS and Android. The app has a social component to it, so people are sending data to and from my server.
I also have an interface for this app that will be accessible through Facebook.
When logging into the app via mobile device, using the native app for that device, one can just log in with standard username and password.
However, obviously if a user accesses the app in Facebook, they will expect to already be logged in since they are already logged into Facebook.
So I need to make it so that my app can take a log in from Facebook, pretty much automatically (?) for users who are coming at it from within Facebook.
Further, it's possible (dare I say "likely"?) a user might access the interface from both Facebook and one of the mobile versions of the app. In which case I need to be able to ensure that the username/password authentication they use on the device points to the same account associated with their Facebook login.
So... all that said... what kind of Facebook authentication should I be studying and implementing.? I'm looking at their documentation right now, and like all documentation, it's not easy to grasp. There is server-side (authentication code flow?) and client-side (implicit flow?), and authentication tokens, and I'm already a bit lost.
Also, I assume Facebook's approach is to want to take over my login in process completely, not live side by side with my mobile-device-only login, but I'd like to make sure users have the option of not using Facebook authentication if they don't want.
Can someone point me in the right direction for how to do this? Basically let me know which part of the documentation I should be focusing on.
And are there any gotchas I should watch out for?
Your server will receive a signed request when your app on facebook.com is loaded; from this you can find the FB uid of the user.
If you obtain the FB uid for users of your mobile device clients you'll be able to match your app's accounts between mobile device & facebook.com clients.
The bottom of the main authentication docs page gives links to further documentation for different client types. The main mobile authentication page has side-bar links to tutorials & SDKs for iOS & Android. Alternatively you could use the server-side OAuth flow as your devices have browsers that support this.
Once you've completed authentication on the mobile device it's simple to obtain the uid.
You can also use the Facebook authentication flow instead of your own username/password authentication.

Facebook Integration in iOS app

I need to post a user-specific text, determined by him, on his wall/timeline when he presses a button (in facebook's tutorial, they make the user login when the app launches, and then it does nothing).
There is a lot of information on the internet but every site does it in other way.
Just wanted to know if there's a specific way to do it.
Thanks!
A quick easy way to add facebook to your app is ShareKit (http://www.getsharekit.com/). This also allows you to add other social network site to your app.
You might want to try Socialize: http://www.GetSocialize.com. It'll allow app users to comment & like within the app, with the option of also sharing out to a social network (Facebook currently live; Twitter coming). Full feature list at http://go.GetSocialize.com/features
DROdio