我正在开发两个iOS应用程序,我想彼此访问他们的数据库。
EG。 APP1和APP2都由我开发,APP1可以访问APP2数据库,反之亦然
我在某处看到,相同的iOS应用开发者可以拥有沙箱访问权限来访问他们自己开发的iOS应用。
答案 0 :(得分:2)
是的,你可以这样做。您创建了一个应用组,将两个应用放在同一个应用组中。在共享文件区域中创建的任何文件都可供两个应用程序使用。它与扩展程序与其主机应用程序共享文件的方式完全相同。
我目前正在使用它来共享两个不同应用之间的SQL数据库。
可以通过文件管理器访问共享文件:
NSFileManager* fileMgr = [NSFileManager defaultManager];
NSURL* sharedDirectory = [fileMgr containerURLForSecurityApplicationGroupIdentifier:appGroupId];
答案 1 :(得分:-1)
确实,您无法从另一个应用中访问文件。
AFAIK您只能使用共享钥匙串在两个应用程序之间共享数据。
看看这里:
How to share keychain data between iOS applications
但也许另一个提案会帮助你:我们使用CoreData和Drew McCormack的Ensembles Framework开发了一个iOS应用程序来使用iCloud Sync。 (https://github.com/drewmccormack/ensembles)
借助此功能(iCloud Sync),它可以同步两个CoreData数据库之间的数据,并且您的两个应用都可以使用相同的数据。
答案 2 :(得分:-2)
不,你无法从另一个应用程序访问一个应用程序中的数据库。(沙盒)
因为数据库是应用专用的。