我正在研究如何在Android应用程序中对用户进行认证和授权
对于身份验证,有AccountManager,但我不知道如何检查用户是否已登录。 我知道如何设置AccountAuthenticatorActivity和AuthenticatorService,但我不确定它是如何与应用程序连接的。
我是否应该在每个活动中对每个onCreate进行一些检查,以确保用户已登录,或者该服务是否以某种方式为我执行此操作?
如果我应该做一些定期检查,那么应该调用这种检查的最佳做法是什么?
这取决于你的应用程序,真的。 除非您需要非常严格的安全性,例如财务应用程序,政府应用程序等,我认为您可以通过更简单的方法获得。 例如,在用户登录后(但是您选择实现此操作)在SharedPreferences中存储一个值以表示用户已经过身份验证。 从这里,您可以执行以下操作之一:
一如既往,这取决于。 你需要保护整个应用程序吗? 或某些特定活动或某些活动中的某些片段。 看看Mint应用程序。
它要求用户输入密码以访问应用程序。 对于这样的事情,创建一个基本活动,并使您的应用程序中的所有活动继承这一点,并在基本活动中进行检查。
如果您只需保护一些活动,请为这些活动创建基本活动,并在那里进行安全检查。
如果是某个活动的某些部分,则必须汇总特定于您的工作流程的内容。
只是一个提示,尝试将您的问题分成更小的问题,这使人们更容易回答。