Совместное использование Custom AccountAuthenticator между приложениями
У меня есть приложение, которое я создал для клиента, использующего пользовательский AccountAuthenticator. Это прекрасно работает и делает то, что хочет клиент.
Однако это только первое приложение из коллекции приложений, которые будут использовать один и тот же диспетчер аутентификации, и я не уверен, что делать дальше.
У меня нет возможности узнать, какие приложения будут установлены каким-либо конкретным пользователем, или порядок их установки. Мне не нужно требовать от пользователя предоставления своих учетных данных для каждого приложения; это противоречит цели наличия менеджера аутентификации.
Из некоторого первоначального тестирования кажется, что просто включить один и тот же код в каждое приложение не получится.
Должен ли я сделать что-то вроде того, что необходимо для использования любого из сервисов Google Play? Напишите функцию, которая проверяет наличие приложения, которое просто выполняет проверку подлинности, а затем отправляет пользователя на рынок для установки приложения, которое выполняет проверку подлинности? Или скачать апк с наших собственных серверов?
Или есть какой-то другой способ избежать выталкивания пользователя из приложения?
1 ответ
Я пытаюсь реализовать ту же среду, что и вы, несколько приложений, использующих одну и ту же учетную запись, мой последний подход (я не говорю, что это лучший способ):
При наличии "фонового" приложения для проверки подлинности, все обычные приложения будут проверять, установлено ли это приложение, в противном случае запустите Google Play, чтобы загрузить его.
Это приложение-аутентификатор создаст учетную запись, используя AccountManager
(учебник здесь), и он не будет иметь никакой активности запуска, будет запускаться только из других приложений для создания учетной записи.
Имея это приложение-аутентификатор, реализация остальных кажется легкой (видно здесь)