Ich versuche, Facebook Login in meiner ersten Android-Anwendung zu verwenden. Wenn ich die Anwendung zum ersten Mal starte und auf Facebook klicke, erscheint die Bestätigungsseite und nachdem ich auf Bestätigung geklickt habe, ruft sie keine der überschriebenen Callback-Methoden mehr auf. (OnSuccess, onCancel, onError). Es gibt nur die erste Seite zurück, auf der sich der Facebook-Button befindet. Und auf den zweiten Klick und nach dem Neustart der Anwendung und klicken Sie auf diese Schaltfläche, es tut nichts zu dieser Zeit, auch nicht die Bestätigungsseite geöffnet. Was kann mit meinem Code falsch sein und was könnte der Grund für diese beiden Probleme sein?Android Login von Facebook tut nichts
1) Warum wird nach der Bestätigung keine Callback-Methode aufgerufen? 2) Warum nach dem ersten Mal, klicken Sie auf Login-Taste nichts tun?
Hier ist meine MainActivity Klasse
public class MainActivity extends AppCompatActivity {
public static CallbackManager callbackManager = CallbackManager.Factory.create();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
setContentView(R.layout.activity_main);
final LoginButton loginButton = (LoginButton) findViewById(R.id.login_button);
loginButton.setReadPermissions("email");
// Callback registration
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
// App code
System.out.println("On Success");
}
@Override
public void onCancel() {
// App code
System.out.println("On Cancel");
}
@Override
public void onError(FacebookException exception) {
// App code
System.out.println(exception.getStackTrace());
}
});
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myevent">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
activity_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.myevent.MainActivity">
<com.facebook.login.widget.LoginButton
android:id="@+id/login_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="30dp"
android:layout_marginBottom="30dp" />
</RelativeLayout>
es ist bereits zu manifest hinzugefügt. – cincin
@cincin ok ich werde meinen Code dann bearbeiten –
@cincin überprüfen Sie den Code –