ステータスを更新するための私のコードは次のとおりです。
new Session(context);
Session.setActiveSession(session);
Session.openActiveSession(context);
Log.e("session after setted",Session.getActiveSession().toString());
Request request = Request.newMeRequest(Session.getActiveSession(), new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user, Response response) {
// If the response is successful
if (Session.getActiveSession().isOpened()) {
if (user != null) {
session = Session.getActiveSession();
postFromAlarm();
Log.e("user","not null");
}else{
postFromAlarm();
Log.e("user","null");
}
} else{
postFromAlarm();
Log.e("not open session",Session.getActiveSession().toString());
Log.e("session","not open");
}
}
});
Log.e("request session",request.getSession().toString());
Request.executeBatchAsync(request);
Log.e("session after setted",Session.getActiveSession().toString());
投稿に使用できる、良好で健全なセッションを示しています。logcat では、セッションが開いていることを示しているため、accesstoken も良好で、app_id も良好です。
onComplete()
しかし、メソッドで投稿しようとしているときにこのセッションを使用して、これらの行を実行しました:
Log.e("not open session",Session.getActiveSession().toString());
Log.e("session","not open");
そしてそれは次のことを示しています:
{Session state:CLOSED, token:null, appId:***************** }
なにが問題ですか?なしnew Session(context)
で試しましたが、同じ結果が得られました。私は何をすべきか?