iPhone 原生应用程序 - 访问通话记录、短信、日历、iTunes 库

据我了解,没有任何可用的公共 API 或任何“合法”/“官方”访问这些 API 的方式......

我只是想知道为什么一些桌面应用程序(MissingSync、iPhoneDrive)可以访问那些...

更新:我发现桌面应用程序仍然显示来自 iPhone 设备的最新信息,而无需将设备同步/备份到桌面。这让我得出结论,桌面应用程序必须直接从设备获取信息,而不是从桌面上的备份(Windows PC: C:Documents and SettingsUSERNAMEApplication DataApple ComputerMobileSyncBackup )请。如果我在这里遗漏了什么,请纠正我..)

stack overflow iPhone native apps - access to call logs, SMS, calendar, iTunes library
原文答案

答案:

作者头像

我认为这是因为在桌面上,Apple 无法限制随机应用程序查看 iPhone 备份所在的某个文件夹(Windows PC:C:Documents and SettingsUSERNAMEApplication DataApple ComputerMobileSyncBackup)并从中读取信息。

作者头像

iPhone 将这些存储在 SQLite 数据库中。如果应用程序有权访问这些文件,它就可以访问数据。

作者头像

好吧,我认为这取决于应用程序以及拥有最新信息的重要性 - 我已经看到两者都完成了。

但我认为直接从手机获取数据也是可能的,因为我从 Google 找到了这个项目 - http://code.google.com/p/iphonebrowser/

某些应用程序执行此操作的另一种方式是要求您的计算机和您的 iPhone 在同一个网络上,然后它们还可以直接访问 iPhone 的文件系统(Things 应用程序以及 Apple 自己的 iTunes 远程应用程序)