在已更新到iOS4的所有iPhone(我们已检查)上,我们的应用程序的行为与以前的操作系统版本(3.1.3)不同(错误)。第一个也是最大的问题是在3G上(但不是在3GS上),任何UIAlertView
冻结应用程序 - 实际上看起来应用程序损失的重点是将其提供给UIAlertView
,但是UIAlertView
也没有得到关注。我必须注意我的应用程序正在使用OpenGL ES 1.1。
其他错误看起来像一些变量获得不同的初始设置。例如,颜色选择器以黄色而不是黑色开始,多点触控计数器给出错误的结果等等......
即使这会冻结应用程序:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:nil message:@"Please read help before using Facebook/Twitter/Flickr"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil, nil];
[alert show];
[alert release];
有任何想法吗?
修改:我们想告诉您我们已解决所有问题。在仔细检查我们的代码并找到我们做错的东西时发现了一些麻烦。在iOS3中,同样的错误并不值得注意,因为操作系统本身速度更快,但iOS4中的应用程序已经瘫痪。还有一些变量需要初始化为默认值(例如 - int x = 0;而不是int x;)然后事情开始按预期工作。
答案 0 :(得分:1)
听起来很陈旧,请仔细检查您的内存管理。由于框架在主要版本之间发生了显着变化,因此代码中的任何潜在内存管理问题都可能成为这种奇怪现象的根源。
答案 1 :(得分:1)
我认为一个'nil'会为'otherButtonTitles'做这个工作。第二个会导致崩溃吗?
如果没有,崩溃时控制台上会报告哪些错误?
答案 2 :(得分:0)
我们发现与iOS 3相比,iOS 4在内存管理问题上更加积极。从设计角度来看,这很有意义,因为Apple现在不得不担心大量的应用程序可能会在同时。我们遇到了大量的内存管理导致的崩溃错误,这些错误在iOS 3中根本没有显示。