我创建了Parse Application。创建了一个记录了ApplicationId,Hashkeys和更新的Parse Application的facebook应用程序。以下是我为实现FB集成所做的代码片段。
首先在Application类中使用Parse.com初始化Facebook应用程序,如下所示:
ParseFacebookUtils.initialize(FB_APPLICATION_ID);
更新了Android清单,如下所示:
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id" />
<activity
android:name=".LoginActivity"
android:label="@string/title_activity_login" >
</activity>
以下是在Parse.com中登录的代码
@覆盖 public void done(最终的ParseUser用户, ParseException异常){ if(user!= null){ if(user.isNew()){ 的System.out.println(ParseFacebookUtils 。.getSession()getAccessToken()); }
startActivity(new Intent(LoginActivity.this,
HomeScreenActivity.class));
getSharedPreferences(PREF_NAME, 0).edit()
.putString(TWITTER_LOGIN, LOGIN_PLATFORM)
.commit();
getSharedPreferences(PREF_NAME, 0).edit()
.putBoolean(IS_USER_LOGGED, true).commit();
} else {
}
}
});
然而,当此代码在显示加载时执行并返回到同一屏幕而不是显示Facebook对话框。
Saw logcat中有以下内容:
Displayed com.facebook.katana/.ProxyAuthDialog: +229ms (total +247ms)
Activity com.facebook.katana.ProxyAuthDialog has leaked ServiceConnection com.android.org.chromium.com.googlecode.eyesfree.braille.selfbraille.SelfBrailleClient$Connection@423302c8 that was originally bound here
02-08 19:45:25.412:E / ActivityThread(21197):android.app.ServiceConnectionLeaked:Activity com.facebook.katana.ProxyAuthDialog泄露了ServiceConnection com.android.org.chromium.com.googlecode.eyesfree。最初绑定在这里的braille.selfbraille.SelfBrailleClient$Connection@423302c8 请帮忙
答案 0 :(得分:0)
好的,我解决了这个问题。您需要覆盖onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
ParseFacebookUtils.finishAuthentication(requestCode, resultCode, data);
}