【问题标题】:JailBreak | Cannot access folders inside /private/var/mobile/Library越狱 |无法访问 /private/var/mobile/Library 中的文件夹
【发布时间】:2014-09-03 13:17:14
【问题描述】:

我正在为访问 Safari 历史记录的越狱 iOS 设备开发一个应用程序。 History.plist 文件位于以下路径。

/private/var/mobile/Library/Safari/History.plist

我已经按照教程在越狱的 iphone 上成功安装了我的应用程序 Use your jailbroken iPhone in Xcode for developing

当我尝试使用 C 的 fopen 命令访问上述路径时,我无法访问它。我的代码如下

FILE *fp = fopen("/private/var/mobile/Library/Safari/History.plist","r"); // read mode
        if( fp == NULL )
        {
            NSLog(@"This file does not exist");

        }else{
            NSLog(@"This file exists");
        }

它返回 NULL 文件指针。 我已经用谷歌搜索并知道,因为我的应用程序仍在沙箱中,所以我无法访问上述路径。包括[为什么iOS 6.1.1 中的SandBox 在我越狱后仍然存在于App 中?][2]

等几篇文章

[2]:Why SandBox in iOS 6.1.1 still exists for App even after I have jailbreak?和[在IOS5上收到“kCTMessageReceivedNotification”通知时如何获取消息][2]

[2]:how to get the message when receiving the "kCTMessageReceivedNotification" notification on IOS5 建议应用程序需要移出沙箱才能访问完整的文件系统。 我对此感到困惑。你能指导我如何访问这条路径吗? 最好的问候

【问题讨论】:

  • 通常您会在控制台中收到一条消息,告诉您访问被拒绝。至于移出沙箱,您可以将您的应用程序复制到所有系统应用程序所在的/Applications 目录中。您可以使用 ssh、iExplorer 或其他任何可以访问 iOS 设备根文件夹的工具来完成。阅读此iphonedevwiki.net/index.php/Xcode,即“实际签名部分”部分。你可以跳过 ldid 的东西,除非你有权利,否则你真的不需要签署任何东西。
  • 感谢 Creker 的回复。我有这个选项,但由于我很快就会出售这个应用程序,所以有什么方法可以实现这个编程或脚本吗?您能否指导我,如果我使用您的技术来测试我的应用程序,那么我的客户是否也需要这样做才能使应用程序在他们的设备上运行?
  • 我不太明白您的问题,但如果您的应用需要一些只能在沙盒之外授予的访问权限(例如浏览器历史访问权限),那么您和您的客户需要将其放在 /Applications目录。否则它将无法正常工作。如何实现取决于您(debian 软件包,使用 ssh 手动安装应用程序)。
  • 实际上我将在我的网站上销售这个应用程序,所以我相信我的客户很难将它手动放入 /Applications 目录。有没有更好的方法来处理这种情况?谢谢
  • 如果您只为越狱设备开发应用程序,那么 debian 包是您的最佳选择。出售它的最简单方法是使用支持付费应用程序的公共 cydia 存储库,例如 modmyi 或 bigboss。如果您愿意,您可以创建自己的存储库并要求客户将其添加到他们设备上的 Cydia 以安装应用程序。当然,这意味着您必须处理所有付款和许可事宜。

标签: ios objective-c jailbreak


【解决方案1】:

通常您会在控制台中收到一条消息,说明访问被拒绝。如果沙箱确实不允许您访问浏览器历史记录,那么您需要将您的应用程序移出沙箱。为此,您可以将应用程序复制到所有系统应用程序所在的/Applications 目录中。您可以使用 ssh、iExplorer 或其他任何可以访问 iOS 设备根文件夹的工具来完成。阅读this,“实际签名部分”部分。你可以跳过 ldid 的东西,你真的不需要签署任何东西,除非你需要用权利签署你的应用程序。

【讨论】:

    猜你喜欢
    • 2016-10-30
    • 1970-01-01
    • 2011-09-17
    • 1970-01-01
    • 1970-01-01
    • 2017-12-24
    • 2023-03-11
    • 2013-02-06
    • 1970-01-01
    相关资源
    最近更新 更多