Мое приложение для Android интегрируется с Facebook с помощью SDK v 3.01. Войдите в систему, используя следующую строку: Session.openActiveSession(m_activity, true, callback);
В первый раз, когда пользователь пытается войти в Facebook через приложение, требуется очень долгое время, чтобы добраться до точки, когда пользователь должен ввести вход (имя пользователя/пароль). Я измерял случаи более минуты, но ~ 30 секунд - "нормальный".
99% этого времени просто ждут, когда Facebook SDK откроет страницу входа в Facebook. Пользователь видит пустой экран с заголовком с моим именем приложения на нем, а в центре отображается индикатор выполнения и поворот...
Воспроизведение:
- Очистить данные для моего приложения.
- Очистить данные для приложения Facebook
- Запустите мое приложение и выполните строку кода выше.
Кстати, процесс входа в систему (если вы можете сэкономить время) в конечном итоге работает, а будущие логины очень быстрые. Но большинство пользователей просто не получают белый экран с индикатором выполнения и ударяют "назад", поэтому никогда не вступают в систему с Facebook.
Я подумал о следующих вариантах и исключил их: - Внедрить мой собственный логин, используя OAuth: исключено, потому что я думаю, что FB собирается удалить поддержку для входа не через их API - Выполняйте этот процесс в фоновом режиме и только всплывайте активность входа, когда он "читает": исключено, потому что я не думаю, что это возможно... - Измените код: исключено, потому что я не смог найти "лучший" способ входа в систему...
Я предполагаю, что либо я делаю что-то неправильно, либо там, по крайней мере, один умный человек, который выяснил, как это сделать.
Цените свою помощь и плодотворное обсуждение.