Выполнение facebook Oauth из моего приложения в Android Studio 1.5.1

#android

#Android

Вопрос:

привет, я новичок в этом oauth, и здесь у меня есть несколько устаревших кодов для входа в facebook из моего приложения .. но вызывается мой метод onError.. кто-нибудь может помочь мне завершить это приложение .. и я правильно настроил свой манифест, gradle и сгенерировал хэш-ключ с помощью инструмента openssl..

Вот мой код:

 public class LoginActivity extends AppCompatActivity {

private LoginButton fbLoginButton;
public CallbackManager callbackManager;
public String facebook_accessToken;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    FacebookSdk.sdkInitialize(getApplicationContext());
    callbackManager = CallbackManager.Factory.create();

    setContentView(R.layout.activity_login);

    fbLoginButton = (LoginButton) findViewById(R.id.facebook_sign_in_button);
    fbLoginButton.setReadPermissions(Arrays.asList("public_profile","email"));

    fbLoginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            GraphRequest request = GraphRequest.newMeRequest(loginResult.getAccessToken(), new GraphRequest.GraphJSONObjectCallback() {
                @Override
                public void onCompleted(JSONObject object, GraphResponse response) {
                    try {
                        String email = object.getString("email");
                        Log.i("Email form FB: ", email);
                    } catch (Exception e) {
                        e.getMessage();
                    }
                }
            });

            Toast.makeText(LoginActivity.this, "Login Success!", Toast.LENGTH_SHORT).show();
            facebook_accessToken = loginResult.getAccessToken().getToken().toString();

            Log.i("Facebook Name..", loginResult.getAccessToken().getUserId());

        }

        @Override
        public void onCancel() {
            Toast.makeText(LoginActivity.this, "User cancelled facebook login", Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onError(FacebookException error) {
            Toast.makeText(LoginActivity.this, "Oops! Something went wrong. Please try again later.", Toast.LENGTH_SHORT).show();
        }


    });
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Log.i("I am in..", "Activity Result");
    callbackManager.onActivityResult(requestCode, resultCode, data);
}}
  

Комментарии:

1. Войдите.e(«facebook error»,error.toString()); и опубликуйте эту ошибку

2. это не входит в мой метод void onError().

3. net::ERR_NAME_NOT_RESOLVED это ошибка, которую я получаю в моем onError ()

4. Где вы запускаете это приложение. на вашем телефоне или эмуляторе

5. я запускаю это в эмуляторе .. я предполагаю, что в моем эмуляторе есть какая-то проблема.

Ответ №1:

net:: ERR_NAME_NOT_RESOLVED означает, что может быть нарушено подключение к Интернету. Чтобы проверить это, вы должны использовать браузер в эмуляторе и проверить его. Если подключение к Интернету не найдено, пожалуйста, создайте другой эмулятор