Каков был бы хороший/рекомендуемый способ связать жизненный цикл клиента API Google+ с потоком приложения с несколькими действиями? Заставить действия зависеть от метода клиента onConnected api для запуска его функциональности, использовать его как единовременную вещь "активации" или, может быть, что-то еще полностью?
В настоящее время я пытаюсь понять, как правильно использовать вход Google+ в моем приложении Android, которое выполняет более одного действия.
Идея состоит в том, чтобы на первом этапе использовать вход G+ только для аутентификации пользователя и получения его электронной почты, для отправки уведомлений и тому подобного. В конце концов я планирую развернуть другие функции Google, такие как, например, Карты или другие сервисы Google Play, поэтому я думаю, что полезно уже реализовать их.
Тем не менее, мое приложение работает не так, как ожидалось, и я сузил проблему до того факта, что я еще не понял знак G+ в цикле приложения, когда присутствует более одного действия.
Какой правильный или рекомендуемый способ реализации этого метода аутентификации? Есть ли какая-то модель, которая могла бы направить меня в правильном направлении?
Например, я нашел очень простую диаграмму жизненного цикла клиента API, но как это связано с потоком приложений?
Изначально у меня есть вход в систему, где я помещаю кнопку входа. Следуя Руководству Google, я могу войти в систему, и когда вызывается метод onConnected, я запускаю Домашнюю активность (что-то вроде панели инструментов или основного экрана приложения).
Это работает несколько. Например, что было бы хорошим способом обработки onStart и onStop для каждого действия? я должен повторно соединиться и повторно аутентифицировать клиент API каждый раз для каждого действия? Так что, может быть, неплохо иметь BaseActivity для реализации всего этого.
Другая проблема заключается в том, должен ли я использовать тот же объект клиента API и каким-либо образом передавать его, или, возможно, сохранить его в классе Base Activity? или я должен каждый раз создавать и инициализировать новый клиентский объект API?
Как насчет того, чтобы просто использовать действие входа в систему для аутентификации с помощью G+, а затем просто получить электронное письмо и сохранить его в локальной базе данных, а также пометить пользователя как "прошедшего проверку подлинности" или "активный" или что-то в этом роде. Это избавит меня от необходимости повторной аутентификации каждый раз, когда приложение закрывается или соединение приостанавливается, даже учитывая некоторую экономию батареи.
The app is not really using G+ posting or any other functionality like that. Ideally it should work well offline, и only need connection for stuff like initial authentication or other one-time only things.
Приложение на самом деле не использует публикацию G+ или другие подобные функции. В идеале он должен хорошо работать в автономном режиме, и ему нужно только соединение для таких вещей, как первоначальная аутентификация или другие единовременные вещи. Любые предложения или указатели в правильном направлении очень ценятся.
Изменение: я прочитал все руководства и учебники, которые я могу найти, которые используют Google+, и каждый из них обращается к этому с одной точки зрения деятельности. Я думаю, что это достаточно распространенная проблема, которая выиграет от шаблона или хотя бы общего руководства.