0

我想将本地 Android 数据库与某处服务器上的远程数据库同步。现在,我想通过一个带有基本 HTTP 身份验证的 REST API 来做到这一点。

我已经阅读并观看了 Google I/O 2010 “开发 Android REST 客户端应用程序”视频,但是对于哪种方法最适合我,我仍然有些困惑:

1.) 内容提供者+服务

2.) 内容提供者 + SyncAdapter

3.) 还有别的吗?

我已经写了一个内容提供者。我对 SyncAdapter 以及身份验证的工作原理有点困惑 - 我可以将基本 HTTP 身份验证与 SyncAdapter 一起使用吗?

4

1 回答 1

1

身份验证是通过 Android 中的帐户完成的。看看这个类:https ://developer.android.com/reference/android/accounts/AbstractAccountAuthenticator.html

也看看这篇博文: http ://www.c99.org/2010/01/23/writing-an-android-sync-provider-part-1/

关于选择哪种方法:如果您想在远程 DB 和本地 DB 之间同步(也就是说,您真的想要同步而不仅仅是下载内容),同步适配器始终是最佳选择!

如果您已经下载了 Android 的示例,您还应该深入研究 SampleSyncAdapter 项目。这应该让你开始。

顺便说一句:永远不要进行基本 HTTP 身份验证。这没有加密,您的服务器和应用程序之间的所有通信都是可读的。始终使用 TLS (SSL)!

于 2012-10-29T10:40:53.747 回答