2016-05-20 53 views
0

即时通讯使用facebook sdk 4+登录Android应用程序,它工作完美,直到昨天,因为昨天当我按facebook登录按钮它显示我加载和从我的GraphRequest.GraphJSONObjectCallback() {抛出错误,错误说“无法找到网址”,任何线索可能是什么?我没碰登录代码,我只是试图将Facebook的用户数据保存到本地数据库,但我删除所有的数据库代码,仍然不能正常工作Android - Facebook 4+登录错误“找不到网址”

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

尝试清理您的项目。 –

+0

已经做到了,干净,重建,与gradle文件同步,没有任何工作 –

回答

1

检查您的互联网连接。最近我发生了同样的事情:我的Facebook登录工作正常,修改了一些核心应用程序逻辑(与Facebook登录逻辑分开)后,我开始发现“找不到URL”错误。我认为这是Facebook的一个问题,但后来发现我的互联网连接不见了 - 这就是它显示错误的原因。一旦我修复了连接,Facebook登录问题就消失了。