2016-06-29 5 views
3

Ich habe eine Facebook Accountkit Demo erstellt, ich mache Login mit E-Mail, es sendet eine E-Mail auf meinem Google Mail-Konto. Ich überprüfe den E-Mail-Link, dann habe ich einen Link "App öffnen". Ich möchte auf meine App umleiten, nachdem ich auf diese Schaltfläche geklickt habe, dies aber nicht tun kann. Beim Klicken auf „Öffnen App“ Button bleibt auf Browser nurFacebook Account Kit Redirect in meine App

verwende ich die Bibliothek unten

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

Referenz bitte auf das Bild unten Befestigt Bild

[angehängtem Bild] [1] finden : http://i.stack.imgur.com/TE2F5.png

Bitte lassen Sie mich wissen, wie dieses Problem gelöst werden kann.

Antwort

3

Die Schaltfläche "Open App" hat einen Link, der zu diesem Zeitpunkt nicht funktioniert, weil Ihre App nicht damit klarkommt.

Es sieht ungefähr so ​​aus:

ak21************7://authorize/ 

kopieren, dass Link und verwenden Sie es in Ihrem AndroidManifest.xml eine Intent-Filter zu definieren, so dass, wenn Sie darauf klicken, Ihre App startet. Wie folgt aus:

<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> 

Da bei der Anmeldung Sie die AccountKitActivity für ein Ergebnis zu starten, müssen Sie zu diesem Bildschirm und Registrierungsprozess zurückkommen werden in der Lage zu beenden, und Ihre onActivityResult aufgerufen.

Sie können dies erreichen, indem Sie eine leere Aktivität definieren, die automatisch schließt. Das ist dieselbe Aktivität, die den oben erwähnten Intent-Filter behandelt. Die Aktivität sieht wie folgt aus:

public class DeepLinkActivity extends Activity { 

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

} 

Nach der Zugabe von dieser, die „Open App“ Taste gearbeitet, es hat mich an die App zurück, und mein Anmeldevorgang abgeschlossen

Verwandte Themen