【问题标题】:Saving an object in memory for debugging elsewhere将对象保存在内存中以便在其他地方进行调试
【发布时间】:2012-01-20 20:46:31
【问题描述】:

我在这里有一个对象,它在我的应用程序初始化并获取其所有数据后生成。该对象相当复杂并且拥有相当数量的属性。不幸的是,由于项目的性质,我无法在 iPhone 模拟器中运行它。因此,我必须每次都在物理 iPhone 上运行它,以便初始化这个对象。

我有什么方法可以在初始化这个对象后保存它,让它充当一个常量,以便我可以继续在使用 iPhone 模拟器的新项目中使用它?

【问题讨论】:

    标签: iphone objective-c ios object ios-simulator


    【解决方案1】:

    您要完成的工作并不完全清楚。也就是说,您可能可以在您的对象中实现 NSCoding 协议,将其序列化为 plist,然后将 plist 传输回您的 Mac,并在应用程序下次运行时使用它来加载(初始化的)对象的副本。

    看看Archives and Serializations Programming GuideNSCoding Protocol Reference

    【讨论】:

    • 谢谢安德鲁,我会看看。我正在尝试做的一个更一般的例子是:这个类对象初始化需要一段时间(60+秒),并且必须在 iphone 上完成。我想做的是将初始化的类移到沙盒环境中,在那里我可以更快、更轻松地使用它,以证明一些逻辑。这更有意义吗?
    • 是的,这是有道理的,我认为我所概述的应该可行。
    【解决方案2】:

    您可以使用例如一些序列化和 writeToFile: 方法(或 NSFileManager)将对象保存到设备操作系统中。然后你应该使用 Xcode -> Organizer 从设备中提取这个保存的文件。找到设备文件夹,然后安装应用程序。可以访问内部应用程序文件夹,例如文档、库和 Tmp。导出您之前保存的文件并在模拟器中使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-20
      • 2018-03-22
      • 2015-05-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多