我刚刚收到Apple发来的一封电子邮件,声称我的iOS应用程序因_terminateWithStatus的调用而被拒绝。不幸的是,我不知道哪个框架可能正在进行此调用。
我可以找到" terminateWithStatus"跟随"字符串"在已编译的可执行文件上执行的命令,所以我知道它存在,但不知道如何确定哪个框架进行该调用。
perl=TRUE
我没有GHUnit框架,这是几年前其他人看到相同问题的罪魁祸首 - 见Finding Private API Call _terminateWithStatus
这就是otool所显示的:
strings myapp | grep 'terminateWithStatus'
任何人都知道如何确定哪个框架可能是那个打电话的人?
由于
答案 0 :(得分:0)
我想我会回答我自己的问题。 事实证明,GoogleToolboxForMax框架有_terminateWithStatus调用,我通过cocoapods /
安装我通过运行
来解决这个问题$ grep -rn "terminateWithStatus" *
Pods/GoogleToolboxForMac/UnitTesting/GTMIPhoneUnitTestDelegate.m:34:- (void)_terminateWithStatus:(int)status;
Pods/GoogleToolboxForMac/UnitTesting/GTMIPhoneUnitTestDelegate.m:115: = [UIApplication instanceMethodSignatureForSelector:@selector(_terminateWithStatus:)];
Pods/GoogleToolboxForMac/UnitTesting/GTMIPhoneUnitTestDelegate.m:120: [terminateInvocation setSelector:@selector(_terminateWithStatus:)];
我已将此方法和所有引用_terminateWithStatus
修改为_terminateWithStatusModified
,然后我可以提交我的应用。