gpt4 book ai didi

android - 创建 Facebook session 对象并从中记录

转载 作者:行者123 更新时间:2023-11-30 03:14:22 24 4
gpt4 key购买 nike

我正在尝试创建一个简单的东西,当用户单击按钮时,facebook 登录过程应该可以工作。我使用已弃用的方法执行此操作,并在记录之前对应用程序进行 FC。在 FB SDK 3.5 中,我使用 session 类通过遵循许多教程来创建该登录名,并且他们也在 Activity 开始时使用 FC。这是我的代码,

public class MainActivity extends Activity implements OnClickListener {

TextView username;
String APP_ID;
Button btn_login;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
APP_ID = getString(R.string.app_id);
btn_login = (Button)findViewById(R.id.login);
btn_login.setOnClickListener(this);

}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}
@Override
public void onClick(View view) {

Session.openActiveSession(this, true, new Session.StatusCallback(){
@Override
public void call(Session session, SessionState state,
Exception exception) {

}
});
}
}

AndroidManifest.xml

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.facebookapp.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

<activity android:name="com.facebook.LoginActivity" />

<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/app_id" />

</application>

这种只有登录功能的方式是否正确。如果错误,请帮助我了解如何在没有 native LoginButton 系统的情况下在 Facebook SDK 3.5 上执行此操作。希望您的回答。

最佳答案

看看这个方法:

 private boolean ensureOpenSession() {
if (Session.getActiveSession() == null || !Session.getActiveSession().isOpened())
{
Session.openActiveSession(this, true, new Session.StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception)
{
onSessionStateChanged(session, state, exception);
}
});
return false;
}
else
{
onSessionStateChanged(Session.getActiveSession(), Session.getActiveSession().getState(), null);
}
return true;
}

并且必须创建 onSessionStateChanged 方法:

 private void onSessionStateChanged(Session session, SessionState state, Exception exception)
{}

您可以在其中指定 session 状态更改时发生的情况。

关于android - 创建 Facebook session 对象并从中记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20398534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com