测试iPhone和模拟器iOS的区别



有问题

我正在编写一个在模拟器中测试的应用程序。所有正常

测试决定在iPhone上进行。我去哪里查看电话,但事实上不是

- (BOOL) myChecker
{
/// ....
if .....
{
return YES
} else {
return NO
}
......
- (void) something {
BOOL myVar = [self myChecker];
if (myVar) {
// .....
} else {
//.....
}
}

模拟器myVar=NO中一切正常;iPhone得到myVar=YES;

如何理解?

更新(已解决(

   - (BOOL) myChecker
    {
      BOOL CheckSomething;
    /// ....
      if ....something {
         CheckerSomething = YES
        } else {
 if .....
{
}
}
    if (CheckerSomething)
    {
    return YES
    } else {
    return NO
    }

在xcode模拟器CheckerSomething is begin=NO;但在iPhone中CheckerSomething=YES在内存中加载变量时

那就是错误

强制设置为NO是决定问题

对不起我的英语

最好的猜测是有一些变量没有初始化,得到的初始值不同。ARC有助于实现这一点,因为它默认情况下会将方法变量(automatics(初始化为nil(0(。

对代码运行Analyze并修复任何警告。

在Xcode调试器中跟踪代码(它在iPhone设备的模拟器中都可用(,逐个语句查看发生了什么。设置一些断点,例如在myCheckersomething方法的顶部。

相关内容

  • 没有找到相关文章

最新更新