account kit deep-link login link from email doesn't open my app

417 views Asked by At

I have a react-native app running on android and the app link from the authentication email doesn't trigger open back into the app.
https://github.com/underscopeio/react-native-facebook-account-kit

the link from the email is ak{my-facebook-appid}://authorize/

and I've configured my strings.xml

...
<string name="fb_app_id">MY_FACEBOOK_APP_ID</string>
<string name="ak_client_token">MY_CLIENT_TOKEN</string>

How do I diagnose to make sure that my app is handling that deep link intent? I have the app set to singleTask because of the branch sdk - should I set it to a different mode?

2

There are 2 answers

0
MonkeyBonkey On BEST ANSWER

So I found the answer in two places, initially I saw that you needed to update your AndroidManifest.xml by adding an intent to the account activity - as noted in the Addtional Email Features section of the documentation https://developers.facebook.com/docs/accountkit/android/configuration/

  <activity android:name="com.facebook.accountkit.ui.AccountKitActivity">
      <intent-filter>
          <action android:name="android.intent.action.VIEW" />
          <category android:name="android.intent.category.DEFAULT" />
          <category android:name="android.intent.category.BROWSABLE" />
          <data android:scheme="@string/ak_login_protocol_scheme" />
      </intent-filter>
  </activity>

However, this does not work correctly as it can land you on the wrong step in the account kit activity flow. I looked at their sample android project and saw that the intent should be with the AccountKitEmailRedirectActivity, at which point it started working correctly.

  <activity android:name="com.facebook.accountkit.ui.AccountKitEmailRedirectActivity">
      <intent-filter>
          <action android:name="android.intent.action.VIEW" />
          <category android:name="android.intent.category.DEFAULT" />
          <category android:name="android.intent.category.BROWSABLE" />
          <data android:scheme="@string/ak_login_protocol_scheme" />
      </intent-filter>
  </activity>
1
Wajdan Ali On

since I cant reply to monkeybonkey's answer I would appreciate if I can be helped with finding the value for

ak_login_protocol_scheme

in email body so that it can be placed here

  <data android:scheme="@string/ak_login_protocol_scheme" />