ohh*_*rob 3 iphone objective-c objective-c-runtime ios ios-frameworks
我在这里搜索了一些关于SO的问题,寻找任何暗示,为什么我看到这种行为,什么都没有.
考虑一个类(实际上是两个表现出相同问题的类),构建在静态库中,包装在框架包中(使用的步骤).它们继承自Foundation框架类集群(NSMutableDictionary和NSMutableArray).
这些类的使用依赖于在静态函数(不是类方法!)用于分配和初始化实例(我猜是一种工厂帮助函数?)之前初始化的一些静态变量.
当iOS应用程序项目链接到该框架时,模拟器和设备之间的Objective-C运行时类加载行为存在差异.
具体来说,在设备(iPhone 4,iOS 4.3.3)上加载应用程序时,这些类不会收到+load消息,并且静态变量不会初始化,因此静态工厂方法失败.在模拟器上,消息被发送,并且所有消息都按预期工作.设备运行时有问题可能是一个问题
我的问题是,我的框架可以配置不同以确保+load邮件发送?或者我遇到了iOS中静态库/框架类加载的错误?
这些类来自JSONKit库(JKArray,JKDictionary).
这个问题的示例项目在这里 - https://github.com/ohhorob/JSONKit-in-framework-demo
编辑:根据@ bbum的建议,我已经验证了在应用程序运行时,JKDictionary和JKArray类实际上已加载并可用.DeviceBrokenGitHub项目的分支使用所使用的验证进行更新.
我向Apple提交了一份bug报告(#9461567).
| 归档时间: |
|
| 查看次数: |
1484 次 |
| 最近记录: |