1

我想创建一个应用程序,将我的 iPhone 联系人同步到我的服务器,反之亦然。我读了一篇关于 google Get Google Sync on your phone的文章。我想要这种类型的功能,无需用户交互即可直接更新联系人(但是需要一次设置)。

任何人都知道谷歌同步是如何工作的。请告诉我如何才能完成这项任务。非常感谢任何建议和链接

4

3 回答 3

5

我认为在您的问题中区分两种重叠的方法很重要。

首先,Google Sync 本质上是一种使用 Microsoft Exchange 协议并在 iPhone 上设置邮件/联系人/日历配置文件的方法。iPhone OS 支持此功能,而不是 App Store 中的 iPhone 应用程序。Google Sync 通过这些已知协议公开数据(邮件、联系人、日历),从而利用了手机的这一基本功能。如果您想以这种方式向用户公开数据,请设置 Microsoft Exchange 服务器并询问有关serverfault的问题。

其次,有 iPhone 应用程序。目前不允许在应用商店中销售的 iPhone 应用在后台运行。这意味着您无法模拟 iTunes 或 Mail 等功能,在您浏览网页时播放音乐,或者在玩 Mini Squadron 游戏时完成邮件检查。如果您需要此后台功能,请向 Apple 提交错误/增强功能。. 但是,您可以通过 API与 iPhone 联系人(通讯录)进行交互。. 当然,您也可以“重新发明轮子”并通过互联网公开您喜欢的数据,并使用自定义 iPhone 应用程序中的数据,但需要注意的是用户需要主动启动您的应用程序才能获取这些数据它不会与内置的 iPhone 日历、地址簿或邮件应用程序集成。一些很好的例子是一些内置消息系统的音乐社区应用程序。据推测,这一切都是通过 Web 服务完成的。

编辑:还值得一提的是,如果您采用“iPhone App”路线,您至少应该考虑推送通知是否适合您,如果适合,您将如何处理它。

于 2010-01-04T15:20:36.067 回答
1

你看过API-Docs吗?

http://developer.apple.com/iphone/library/documentation/ContactData/Conceptual/AddressBookProgrammingGuideforiPhone/100-Introduction/Introduction.html

接下来我使用了一个名为Funambol的应用程序——它是一个 sync4j 服务器/客户端。他们有一个开源应用程序来同步 iPhone 上的联系人。来源在他们的存储库中,信息在这里: http: //forge.ow2.org/scm/?group_id=96

正如 slf 告诉你的,你的应用程序必须在前台运行。这可能会限制你。

祝你好运和最好的问候,弗洛里安

于 2010-01-06T14:39:08.020 回答
0

3.0 SDK 将允许您的应用程序读取手机上的联系人数据。Web 服务将允许您将该数据发布到您的服务器,并接收更新。您可能还想使用 coredata 来存储所有联系人数据的哈希值,这样您就可以知道什么是新的/更新的,然后将该数据发送到您的服务器。

于 2009-12-30T16:04:19.327 回答