如何在Android帐户中使用AccountManager?

时间:2011-08-18 01:46:07

标签: java android google-reader accountmanager

我想在Android中使用AccountManager来验证com.google帐户。我已经知道如何获得帐户,但我有几个问题,

  1. 如果该帐户不在AccountManager中,并且帐户自身位于com.google域下,那么我该如何添加?
  2. AccountManager如何管理令牌?它会自动检索令牌,还是需要手动检索?
  3. 我正在尝试使用带有ClientLogin的Google Reader API,然后我可能第一次需要密码。如果其他应用先前存储了某些com.google帐户,我可以使用它们来获取密码吗?
  4. 编辑于2011.08.20

    澄清这个问题,我想问这个问题,

    1. Android上的Google应用程序有自己的例程来验证Google帐户,我想知道是否可以调用Google应用程序创建的例程并获得我自己的权限?
    2. 如果Android手机上没有Google帐户,我该如何添加帐户,以后Google应用程序会接受该帐户?

1 个答案:

答案 0 :(得分:4)

  

如果该帐户不在AccountManager中,并且帐户自身位于com.google域下,那么我该如何添加?

如果您只想拥有一个允许用户添加Google帐户的按钮,请考虑调用ADD_ACCOUNT意图。另一个更高级的选择是使用AccountManager.addAccount

  

AccountManager如何管理令牌?它会自动检索令牌,或者我需要手动检索令牌?

系统管理令牌。实际上,应用程序注册了“authenticators”,它们为相应的服务管理令牌。 Google帐户的身份验证器预装了大多数Android设备,而Twitter等第三方应用程序在安装时会添加自己的身份验证器。想要使用Google帐户的应用可以使用AccountManager.getAuthToken请求身份验证令牌。

  

我正在尝试使用带有ClientLogin的Google Reader API,然后我可能第一次需要密码。如果其他应用先前存储了某些com.google帐户,我可以使用它们来获取密码吗?

您的应用不应该向用户询问她的Google密码。使用相关的AccountManager方法为Reader请求身份验证令牌。不幸的是,由于Google阅读器没有公共API,我无法进一步提供帮助。