Submitting Open Graph Actions for an iOS app? - ios

For an iOS app that doesn't exist yet in the App Store, what I should write for "Steps to Reproduce Your Action" when I am submitting the actions for the Facebook Open Graph Api ?

You can submit screenshots of the flow of your app as an acceptable alternative when you have a native mobile app such as this. Specifically, the screenshots should show how the action is triggered within the app and then what the story looks like on a user's Timeline.
Upload the screenshots to some URL and then explain and include the URL with your submission.
Source: spoke to team in Facebook responsible for approving actions.

Related

Facebook app links don't open app when post is clicked in 2017

I've added app links headers for my web site with metadata for my iOS app, but they don't open app when post is clicked. Is app links works as described in documentation in 2017? (https://developers.facebook.com/docs/applinks/add-to-content)
This is expected behavior
Unfortunately it is not currently possible to directly launch a third-party app from within the iOS Facebook app. This is a known issue that Facebook has essentially written off as wontfix. This is still possible in the Android Facebook app, but it's unfortunate they haven't been more transparent about the change to the iOS version because there is quite a bit of confusion about it.
Instagram is a special case because it is a Facebook-owned app and gets different treatment.
But you can work around it
Services like Branch.io (full disclosure: I am on the team) get around this by implementing a judicious combination of App Links, URI schemes, and iOS Universal Links. Essentially what you need to do is open a page in the webview and then have a button or other user-driven CTA event that launches the app from there. It's an extra step for the user, but currently the best workaround. If you just want to be able to post a link that goes into your app when it is installed and otherwise goes to a webpage (or the App/Play Store), then Branch links are definitely your simplest solution.
Branch link routing logic

Firebase dynamic link does not navigate to ios app/ appstore from facebook post in iOS

I have to implement navigation from facebook post to my native iOS app or app store if the app is not installed. For that, I have tried Facebook APP Link feature but it did not work. Then I created Firebase Dynamic link and post it on facebook app directly. After tapping on posted link, it shows one pop up saying "Leave Facebook? This webpage is trying to open an app outside of Facebook. Are you sure you want to open it?"
After tapping on Yes, it does nothing. I have cross verified the created link with https://app_id.app.goo.gl/apple-app-site-association It shows associated bundle id, team id, app store id.
Can anyone please suggest me the proper pathway to implement deep linking with facebook post to the app?
Also, can we test deep linking with the app which is not on the App Store?
Thanks in advance.
Facebook doesn't like users to leave their app. They stopped supporting App Links in their iOS app almost a year ago, and have never supported Universal Links (which is what Firebase Dynamic Links uses).
The only workaround is to send users to a landing page with a CTA button, and put another deep link behind that button (on a different domain than the one on which you're hosting this landing page). It's an extra step for the user, but currently the only option. Branch.io (full disclosure: I'm on the Branch team) does this via the Deepviews feature. Dynamic Links currently doesn't have an equivalent, so you'd need to build something yourself.

Confused about Facebook review process

I am trying to develop an iOS app which can pull your Facebook videos. Very similar to this the Android app except the video download part. For this I need user_videos permission and for that my app should go through the app review process. Now they are asking for App Video and App runtime. I can give them but that has nothing but fb login screens with no videos. How should I proceed with this app?
EDIT:
I created a dummy app and submitted the runtime for it. Video here
Now as I dont have the user_video permission, I can only show placeholder videos (as shown in video). I explained my situation to them, and their reply was:
"Developers can configure a test user that has granted tokens for the requested permission. Please submit your app after you have incorporated the requested permission."
A test user is not allowed to get tagged or upload a video. And graph API also gives error in case I try to do that. How a test user can solve my problem here?
Facebook people are sometimes anxious to know if your app is not using any content that will violate facebook content policy. Just make a simple video of your two screens and they will approve the app in a short period.
Update
Following are the steps on facebook developer dashboard which will show you how to upload the video for review of your app.
Status and review -> Click on add notes in App detail section -> Enter the steps to be reproduced by facebook review team -> upload a screencast (Refer https://developers.facebook.com/docs/facebook-login/review/examples#screencast )

How to handle URLs from Facebook Open Graph actions in iOS app

I'm building an iOS app that has Facebook open graph actions, and when I post an action on Facebook, on mobile app, I'm getting a link to my mobile app's ID on the App Store, which is not available yet. As a placeholder (otherwise Facebook doesn't save my settings), I've put an ID of another app that I have. Whenever I tap an Open Graph story on Facebook from my new app in Facebook iOS app, An App Store page of my previous app opens. I need the functionality to handle open graph action taps from Facebook iOS app before I submit my app to App Store. How can I test URL handling functionality in a such scenario?
Here is how my Facebook Native iOS App dashboard looks like:
Bundle ID matches my app's ID in my app exactly. iPhone/iPad App Store ID links to one of my previous apps, else Facebook doesn't accept my settings when I click Save button, complaining about app not yet being available on App Store. Facebook login and deep linking are both enabled, and URL schemes are registered the same way (the one starting with fb continues with my Facebook app ID) in the app bundle too. But still, my app doesn't launch when I tap a story on Facebook mobile app. Instead, a popup to install the app with the ID that I've specified launches (though, weird enough, I have that app installed too).
Facebook documents this here: https://developers.facebook.com/docs/ios/link-to-your-native-app-ios-sdk/
Just look under How to handle deep links to provide a more relevant user experience

Submitting actions for unreleased iOS app?

The Open Graph "Submit for Approval" documentation page says that the team evaluating the Actions will follow our instructions to trigger them. Our iOS app uploads a document to our backend server, and then posts the action with the unique url that was just generated.
What's the best way to get our actions approved by Facebook, given that they can only be triggered from an iOS app that's not available in the app store yet?
The procedure is simple as stated on the comments.
Create a web app that simulates the same behavior used by the iOS
App to post to Open Graph.
Give that link to Facebook and explain them your case.
In my case a previous version of the app (that didn't use Open Graph API) was already published so I sent them a link to that App explaining that this is an additional feature.
I suggest in your case sending a video of the app if you don't have a previous version already published.

Resources