我是Android新手,但对Java老。在进入我自己的客户经理实施方案之前,我有一些问题。这是东西,
Google客户经理的工作方式是什么? 我遇到过几个论坛和博客,大多数情况下,他们解释了帐户管理员的工作方式以及如何添加我们自己的帐户。这里我有几个问题,
google account manager如何在android中存储用户密码?
如果他们没有在设备本身中存储用户密码,那么如何 他们无缝地为请求的应用程序生成身份验证令牌 谁在使用Google客户经理(例如地图/视频群聊/ ...)
参考
How does Android's account manager use the stored password to retrieve an auth token? https://developers.google.com/tasks/oauth-and-tasks-on-android
http://blog.udinic.com/2013/04/24/write-your-own-android-authenticator/
答案 0 :(得分:4)
它们(很可能)不存储密码,而是存储经过身份验证后从Google服务器收到的Oauth令牌以及刷新令牌。 所有Google应用都可以使用同一个帐户管理器来获取身份验证令牌并与其后端进行对话,一旦该令牌失效,帐户管理器就会使用刷新令牌来获取新令牌并将其存储在帐户管理器中。
存储密码不仅对应用程序来说是非常危险的,而且会使用户的帐户完全容易被服务器上的客户端应用程序窃取。