Вход в Facebook в фрагменте в android

Я пытаюсь войти в Facebook с помощью пользовательского интерфейса, который отлично работал в классе Activity. То же самое, что я должен сделать и в Фрагменте. но Callback не выполняется. Невозможно добавить CallbackResult в Fragment OnActivityResult?

Ответ 1

Да. Возможно, что вы используете логин facebook во фрагменте, единственное, что вам нужно сделать, это вызвать OnActivityResult в вашей активности хоста следующим образом:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        Fragment fragment = getFragmentManager().findFragmentById(R.id.your_host_fragment_in_activity);
        fragment.onActivityResult(requestCode, resultCode, data);
    }

а затем снова вызовите onActivityResult в фрагменте yout.

Ответ 2

Вам просто нужно добавить этот код в свою активность onActivityResult.

for (Fragment fragment : getSupportFragmentManager().getFragments()) {
            //System.out.println("@#@");
            fragment.onActivityResult(requestCode, resultCode, data);
        }

Тогда ваш фрагмент onActivityResult, безусловно, сработает.

   @Override
        public void onActivityResult(final int requestCode, final int resultCode, final Intent data) {


            callbackManager.onActivityResult(requestCode, resultCode, data);
        }

Ответ 3

Вам просто нужно добавить одну строку внутри фрагмента

fbLoginButton.setFragment(this);

Вы получите контроль в

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {}