誰かが私がこのコードのビットを非推奨にするのを手伝ってくれませんか?これはFacebookからの例です(FBアカウントへの接続方法について- https://developers.facebook.com/docs/Android/getting-started/facebook-sdk-for-Android/ )、ただし、マークされた行:
Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {
は非推奨です。私はそれを次のものに置き換えようとしました:
Request.newMeRequest( session, callback, executeAsync() );
ただし、コードは非常に紛らわしくネストされているため、すべてが混乱します。私は一日中これにいたので、あなたが与えることができるどんな助けにも感謝します。
// start Facebook Login
Session.openActiveSession(this, true, new Session.StatusCallback() {
// callback when session changes state
@Override
public void call(Session session, SessionState state, Exception exception) {
if (session.isOpened()) {
// make request to the /me API
Request.executeMeRequestAsync(session, new Request.GraphUserCallback() { // *DEPRECATED
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
TextView welcome = (TextView) findViewById(R.id.welcome);
welcome.setText("Hello " + user.getName() + "!");
}
}
});
}
}
});
}
よろしく
_Request.executeMeRequestAsync
_を次のように置き換えます。
_Request.newMeRequest(session, new Request.GraphUserCallback() {
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
TextView welcome = (TextView) findViewById(R.id.welcome);
welcome.setText("Hello " + user.getName() + "!");
}
}
}).executeAsync();
_
つまり、少し異なるメソッドを呼び出して、最後に.executeAsync()
を置く以外は、何も変わりません。