带有appengine Google用户帐户的Android同步适配器

带有appengine Google用户帐户的Android同步适配器,android,google-app-engine,android-syncadapter,Android,Google App Engine,Android Syncadapter,我正在为我的应用程序实现一个同步适配器,以便与appengine后端同步。在appengine上,我使用内置的用户api进行身份验证。有一篇帖子告诉你怎么做,但是这个应用程序被列在gmail账号下。理想情况下,我的应用程序会列在帐户中。我不想问用户用户名和密码,只需使用现有的谷歌帐户进行身份验证。以前有人这样做过吗 更新: 我一直在做这个,看起来我可以实现AuthenticationService并存储用户帐户名,并将密码保留为空字符串。在getAuthToken()方法中,我应该能够简单地返回

我正在为我的应用程序实现一个同步适配器,以便与appengine后端同步。在appengine上,我使用内置的用户api进行身份验证。有一篇帖子告诉你怎么做,但是这个应用程序被列在gmail账号下。理想情况下,我的应用程序会列在帐户中。我不想问用户用户名和密码,只需使用现有的谷歌帐户进行身份验证。以前有人这样做过吗

更新:
我一直在做这个,看起来我可以实现AuthenticationService并存储用户帐户名,并将密码保留为空字符串。在getAuthToken()方法中,我应该能够简单地返回GoogleAuthToken。一旦我进一步了解,我将发布…

也许你误解了Android帐户系统。当你进入设置->帐户&同步并添加一个新帐户时,你会看到一个帐户类型列表。账户类型和应用程序之间通常存在某种关系,例如Facebook账户与Facebook一起使用。通常,如果您有不同的后端系统来处理身份验证等,您会添加一个新的帐户类型

如果我理解正确,您使用谷歌账户,但希望它显示为您自己的账户类型。我听上去不对。你最终会重新实现谷歌账户处理,但没有什么价值。我相信,如果你简单地依靠谷歌提供给你的东西,对用户来说会更简单。单击帐户时可以看到您的应用程序/服务/内容提供商。例如,在(免责声明:我不属于该公司)之后,他们将“同步任务”添加到数据和同步选项列表中


但是,如果您确实想创建自己的帐户类型,请遵循示例。查找代码和相关资源(例如清单、活动布局等)。

这确实是可能的,我已经成功地实现了这一点,但请注意,这有点令人头痛

有一个很好的教程叫做

。。。别忘了在中查看后续信息

除此之外,Android SDK示例中还有一个示例,名为,在我的开发中非常宝贵


只要稍微努力一点,喝很多咖啡,你就应该能够让这项工作顺利进行;)

我理解你的意思,但是我将同步特定于我的应用程序和用户帐户的数据。将“同步任务”放在google帐户下是有意义的,因为正在同步的是google数据。我使用谷歌账户进行登录和账户用户名,因为用户不必记住另一个密码,这会减少我的工作量。我仍然认为最好将应用程序的数据添加到用户的谷歌账户中。但是,由于您不同意,请随意为您的应用程序实现自定义验证器。通过遵循示例同步适配器示例并使用Google帐户作为服务器端(或者,也许可以使用appengine作为授权的中介),这相当容易。示例同步适配器验证器也使用appengine作为后端,这使您在那里的工作更轻松。我自己也大致解决了这个问题,但仍有一些问题需要解决。我已经在我的应用程序中设置了google帐户的身份验证,所以我真的不需要在AuthenticationService中实现getAuthToken和其他方法。我基本上只想使用syncadapter功能…您有任何可以从身份验证服务共享的代码吗?您是如何在应用程序中添加帐户的?所有代码都在我在答案中链接的SampleSyncAdapter示例代码中。我将它剥离到基本的部分(并将其破坏了几次),然后将其栓接到我的代码中。一个有用的提示。。。这个东西需要一个很小的xml文件,您可以在示例项目中找到它。。。请确保将其放在xml文件夹中。。。为了解决这个问题,奈利发疯了;)这篇文章也可能是关于创建同步适配器的另一篇综合文章,包括一个工作示例应用程序: