Facebook Account Kit 重定向到我的应用程序

4

我创建了一个Facebook AccountKit演示,使用电子邮件登录,它会发送一封邮件到我的Gmail帐户。我验证了邮件链接,然后得到了一个“打开应用程序”的链接。我想在点击此按钮后重定向到我的应用程序,但无法实现。点击“打开应用程序”按钮后,它仅停留在浏览器中。

我正在使用以下库:

compile 'com.facebook.android:account-kit-sdk:4.+'

请参考下方附图 Attached Image:

[附图][1]:http://i.stack.imgur.com/TE2F5.png

请告知如何解决此问题。

1个回答

3
"打开应用" 按钮有一个链接,但此时它不起作用,因为您的应用程序无法处理它。
它看起来像这样:
ak21************7://authorize/

复制该链接并在AndroidManifest.xml文件中使用它来定义一个意图过滤器,这样当你单击它时,你的应用程序将启动。像这样:

<activity android:name=".ui.activity.DeepLinkActivity" >
    <!-- For Facebook Account Kit -->
    <intent-filter android:label="@string/app_name">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="ak21************7" />
    </intent-filter>
</activity>

由于在登录时您会启动AccountKitActivity以获得结果,因此您需要返回到该屏幕,这样您的注册流程才能完成,并调用您的onActivityResult。

您可以通过定义一个自动关闭的空白活动来实现。这是处理上面提到的意图过滤器的相同活动。该活动如下所示:

public class DeepLinkActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        finish();
        return;
    }

}

在添加了这些之后,"打开应用"按钮就可以正常工作了,它将我带回到应用程序,我的注册流程也顺利完成了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接