有没有一个path,每个应用程序可以在越狱iPhone写入文件?

我应该挂钩每个应用程序的UIResponder ,包括SpringBoard和其他任何应用程序。 在挂钩,我会写一些东西到指定的文件。 如果我设置了Cydia推荐的/var/mobile/Library/MyApp的path,我发现只有SpringBoard和MyApp可以成功写入。

那么有没有一个地方每个应用程序可以写和读?

我承认,我不是100%肯定的,但我的猜测是没有,每个应用程序都可以将文件写入越狱iPhone的path

当然, 越狱应用程序(安装在/Applications/ )可以写入越狱应用程序之间共享的位置。 但是,正如我理解你的问题,你想注入代码到正常的App Store应用程序,以便这些应用程序也可以读取和写入共享位置。 这部分我不认为是可能的,因为越狱不会完全禁用安装在/var/mobile/Applications/下的第三方应用程序的沙箱 。

现在, 可能有一个解决方法。 有些共享文件夹可以被所有应用程序用于某些目的。 例如,任何应用程序都可以将图像写入保存的照片相册。 你可以尝试的是取得你想写的文件的内容,并将其编码为假图像数据,在UIImage (例如[UIImage imageWithData:] )。 您可能需要将有效的图像标题添加到数据。 然后,将文件保存到照片相册,使用类似的东西

writeImageToSavedPhotosAlbum:orientation:completionBlock:

另一个应用程序可以通过枚举已保存的照片相册来find假照片,然后将资源转换回图像表示以将真实数据撤回。

但是,这似乎相当复杂,可能不会工作(我没有尝试过)。 也许你可以告诉我们为什么你想要这个共享文件。 也许有更好的方法来共享数据,而不使用全局访问的文件?

通知可以帮助你。 每个应用程序都会发送有关事件的进程间通知。 你可以启动一个守护进程来监听这个通知,并把它们保存在一个文件中。 或者你可以在SpringBoard上听他们,比如他可以写到/ var / mobile / Media。 取决于你想用这个文件做什么。 在这里查看我的答案如何创build一个全局的环境variables,可以访问SpringBoard或其他应用程序在越狱iPhone?