即时通讯使用facebook sdk 4+在Android应用程序中登录,它完美地工作到昨天,因为昨天当我按下登录时使用facebook按钮它显示我加载并且从GraphRequest.GraphJSONObjectCallback() {
向我抛出错误并且错误说"无法找到网址",任何线索可能是什么?我没有触摸登录代码,我只是尝试将facebook用户数据保存到本地数据库,但我删除了所有数据库代码但仍然无法正常工作
LoginActivity.java
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.example.project.calisthenic",
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (PackageManager.NameNotFoundException | NoSuchAlgorithmException e) {
}
loginButton = (LoginButton) findViewById(R.id.login_button);
loginButton.setReadPermissions(Arrays.asList(
"public_profile", "email", "user_birthday", "user_friends"));
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.d("debug", "onSuccess");
GraphRequest request = new GraphRequest().newMeRequest(loginResult.getAccessToken(),
new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(JSONObject object, GraphResponse response) {
String email = null;
String name = null;
try {
email = object.getString("email");
name = object.getString("name");
mEmailView.setText(email);
startActivity(new Intent(getApplicationContext(), MainScreen.class).putExtra("email",email).putExtra("name",name));
finish();
} catch (JSONException e) {
e.printStackTrace();
}
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,email");
request.setParameters(parameters);
request.executeAsync();
}
@Override
public void onCancel() {
// App code
Toast.makeText(getApplicationContext(),
"Canceled",
Toast.LENGTH_LONG).show();
}
@Override
public void onError(FacebookException exception) {
// App code
Toast.makeText(getApplicationContext(),
"Error:"+exception,
Toast.LENGTH_LONG).show();
}
});
答案 0 :(得分:1)
检查您的互联网连接。
最近我发生了同样的事情:我的Facebook登录工作完美,在修改了一些核心应用程序逻辑(与Facebook登录逻辑分开)后,我开始收到“无法找到URL”错误。我认为这是Facebook的一个问题,但随后发现我的互联网连接已经消失 - 这就是它出现错误的原因。一旦我修复了连接,Facebook登录问题也就消失了。