Android facebook sdk 3.0 通过自定义按钮登录。我不想使用片段。只需单击一个按钮,然后 facebook 登录获取用户名、电子邮件、uid 和访问令牌。
如果 facebook 在一个对话框中登录没有问题。
Android facebook sdk 3.0 通过自定义按钮登录。我不想使用片段。只需单击一个按钮,然后 facebook 登录获取用户名、电子邮件、uid 和访问令牌。
如果 facebook 在一个对话框中登录没有问题。
我意识到这是一个旧线程,但我遇到了类似的问题,而另一个答案对我不起作用。我想让我自己的自定义按钮具有与内置登录按钮相同的功能。
第一步是在我的 xml 文件中包含内置的 facebook 按钮,但将其可见性设置为“已消失”,因此用户无法看到它。
<com.facebook.widget.LoginButton
android:id="@+id/authButton"
android:visibility="gone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="30dp"
/>
在我的主要活动中,我定义了隐藏的 facebook 按钮和我想使用的按钮
fbLoginButton = (Button) findViewById(R.id.authButton); //built in facebook button
customButton = (Button) findViewById(R.id.customButton); //my custom button
然后在自定义按钮的 onClickListener 中,我在 facebook 按钮上使用了“.performClick”方法
customButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fbLoginButton.performClick();
}
});
这对我来说就像一个魅力。希望这可以帮助某人。
1 - 在您的 AndroidManifest.xml 中添加 facebook 登录活动
<activity android:name="com.facebook.LoginActivity" android:screenOrientation="portrait"></activity>
2 - 按钮点击事件
Intent i = new Intent(this,com.facebook.LoginActivity.class);
startActivity(i);
这将打开 facebook 登录活动。
我向您推荐有关 facebook Session 的材料:https ://developers.facebook.com/docs/reference/android/3.0/Session/
Session 可以由UiLifecycleHelper管理