I have done some exploration and have found the following things, this is what I have done so far:
Implemented custom URL, like myApp://
Additional info:
So you need to deploy the app to the store? – locoboy Aug 7 '15 at 16:38
For testing Deep Link or Deferred Deep Link as they said before me:
activateApp) I had reported the same facebook support and they said that above mentioned steps were correct in order to implement the deferred deep link functionality.
Also, the same can be tested as follows:
Visit https://developers.facebook.com/tools/app-ads-helper
Select your app and hit 'Submit'.
At the bottom you will find 'Deep Link Tester' under Developer Tools. Hit 'Test Deep Link' and in the dialog you can enter your deep link to test.
So, after doing this you need to uninstall the app(if already present) and then install again from the app store. The device in which you will be testing this should have facebook app installed and logged in with the account from which you had sent the "deferred deep link request" from app-ads helper.
Now when you open your app, you should bee able to see your deferred deep link functionality working.
The above steps worked for me.
Select both 'Send Notification' and 'Send Deferred' check marks.
Then you will get a notification to your facebook app.
8.Add bellow keys to your info.plist
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>**Your URL Scheme** </string>
<string>**Your FB app id** </string>
</array>
</dict>
</array>
URL scheme Like "testScheme://......."
FB app id Like "fb........."
Now we can test 2 cases.
app already install in your device with deferred link implementation
New install
for 1st case, install your app and then click facebook notification, it is redirected to your app.
for 2nd case, For new installs
Uninstall your app and Connect your device to xcode
Then click deeplink facebook notification, it is redirected to appstore, don't install from appstore because your published app doesn't have app deep link implementation
Then you can run app from xcode, once it is installed, it is open your deeplink as 1st case.
Thats it....
Note: don't forgot to implement
- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url,NSError *error){
if(url)
{
// redirect to where you want
}
}];
...........
}