2

Я разрабатываю приложение для Android, где пользователи должны иметь возможность аутентифицироваться, а затем совершать звонки в API данных YouTube.Как предоставить доступ к связанным/дополнительным учетным записям Google

У меня нет проблем с аутентификацией пользователей с их основной учетной записью, используя Google Sign-In все легко и удобно, как для меня, так и для пользователей.

Проблема заключается в том, что некоторые службы Google (например, Google+ и YouTube) позволяют одной учетной записи Google иметь несколько связанных аккаунтов (связанных аккаунтов) (например, несколько страниц Google+ или несколько каналов YouTube).

К сожалению, похоже, что вход в Google не учитывает этот прецедент. Каждый пользователь вынужден войти в свою основную учетную запись. В моем сценарии это серьезная проблема. Это означает, что некоторые пользователи не смогут войти в свои вторичные каналы YouTube.

Единственным решением, которое я имею до сих пор, является использование процесса аутентификации в Интернете. Но это, очевидно, худшее с точки зрения пользовательского опыта, а также означает, что я должен сам справляться с решением WebView.

Я уже построил небольшую библиотеку, которая делает все, но Google recommends to use the provided Client libraries по множеству веских причин. Проблема в том, что все их клиентские библиотеки имеют одинаковую проблему в Android. (Google API Client Library for Java полагается на AccountManager для Android, поэтому имеет такую ​​же проблему в Google Sign In)

Кто-нибудь знает, если я что-то упустил? существует ли собственный способ аутентификации учетных записей пользователей? или я вынужден использовать веб-аутентификацию?

Та же проблема была решена в 3 years old YouTube blog post, возможно ли, что решения еще нет?

ответ

1

По-видимому, в настоящий момент нет другого способа решить эту проблему. Вот ссылка на библиотеку, которую я создаю, в случае, если у кого-то будет такая же проблема. https://github.com/PierfrancescoSoffritti/GoogleWebOAuth

Надеюсь, Google решит проблему в будущем.