我应该钩UIResponder
每个应用程序,包括 SpringBoard 和任何其他应用程序。在 Hook 中,我将向指定文件写入一些内容。如果我将路径设置为 /var/mobile/Library/MyApp
,Cydia推荐的,发现只有SpringBoard和MyApp能写成功。
那么是否存在每个应用程序都可以读写的地方?
最佳答案
我承认我不是 100% 确定这个,但我的猜测是 不,没有每个应用程序都可以在越狱的 iPhone 上写入文件的路径 .
当然,越狱手机上的越狱应用程序(安装在 /Applications/
中)可以写入可以在这些越狱应用程序之间共享的位置。但是,据我了解您的问题,您想将代码注入(inject)普通的 App Store 应用程序,以便这些应用程序也可以读取和写入共享位置。我认为那部分是不可能的,因为 jailbreaking does not completely disable the sandbox for 3rd-party apps installed normally , 在 /var/mobile/Applications/
下.
现在,可能有一种解决方法。出于某些目的,所有应用程序都可以访问一些共享文件夹。例如,任何应用程序都可以将图像写入保存的相册。您可以尝试的是获取您要写入的文件的内容,并将其编码为假图像数据,在 UIImage
中。 (例如 [UIImage imageWithData:]
)。您可能需要添加有效图像 标题 到数据。然后,您将文件保存到相册,使用类似
writeImageToSavedPhotosAlbum:orientation:completionBlock:
.
然后另一个应用程序可以找到 enumerating the saved photos album 的假照片,然后是 converting the asset back to image representation把真实数据拉回来。
但是,这似乎很复杂,并且可能行不通(我还没有尝试过)。也许你可以告诉我们为什么你想要这个共享文件。也许有更好的方法来共享数据,而不使用全局可访问的文件?
关于iphone - 是否有每个应用程序都可以在越狱iPhone中写入文件的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17807742/