gpt4 book ai didi

java - facebook sdk 4.0 相当于 android 中的 Session.StatusCallBack 和 OpenRequest

转载 作者:太空宇宙 更新时间:2023-11-04 13:58:52 25 4
gpt4 key购买 nike

我正在将我的 Android 应用程序升级到 Facebook sdk 4.0 和 Graph API v2.0,并且我想知道 Session.StatusCallBack 和 OpenRequest 是否有等效的类。这是我的代码,如果有人可以提供帮助那就太好了:))

    OpenRequest op = new Session.OpenRequest(activity);

Settings.addLoggingBehavior(LoggingBehavior.INCLUDE_RAW_RESPONSES);

op.setCallback(statusCallback);

List<String> permissions = new ArrayList<String>();
permissions.add(Constants.EMAIL);
op.setPermissions(permissions);
Session sess = new Session.Builder(activity).build();
Session.setActiveSession(sess);
sess.openForRead(op.setPermissions(permissions));

以及我的 StatusCallback

Session.StatusCallback statusCallback = new Session.StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception) {
// Request.executeMeRequestAsync(session, graghUserCallback);
if (exception != null) {
String exMsg = exception.getMessage();
if (exMsg != null && exMsg.startsWith("ApiException:Error")) {
isExpireToken = true;
callbackLogin.onFbLoginError(context.getString(R.string.msgFBConnectFaild));
String url = Constants.API_FB_TOKEN + myApp.getFbToken();
Api.sendError(myApp, url, 0, exMsg, Method.POST, null);
}
}
CommonUsed.showProgressDialog(context.getResources().getString(R.string.waiting), context);
runQueryGetUserProfile(session, ConnectionBase.this.callbackLogin);

}

};

最佳答案

请参阅upgrade guidelogin guide 。基本上,您使用 LoginManager 进行登录,并使用 CallbackManager 来注册回调。

public class MainActivity extends FragmentActivity {
CallbackManager callbackManager;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() { ... });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
}

// Somewhere in your on activity to actually do login:
private void login() {
LoginManager.getInstance().logInWithReadPermissions(this, Arrays.asList("public_profile", "email"));
}
...
}

关于java - facebook sdk 4.0 相当于 android 中的 Session.StatusCallBack 和 OpenRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29519349/

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