iOS 应用程序在调试模式下运行正常,但在正常模式下崩溃
iOS app runs normally in debug mode but crashed in normal mode
总结:我正在开发一个应用程序。奇怪的是,当我 运行 它处于调试模式时(将我的设备连接到 Xcode 并单击 运行 按钮),它运行正常。但是当我 运行 它处于正常模式时(没有将它连接到 Xcode,像用户所做的那样正常打开它),它崩溃了。
解决方案:请看下面@skyline75489 的回答,他的回答救了我的命!遇到此问题时,请尝试减小图像的大小。
详情:
现在我正在开发 iOS8 键盘。在键盘的初始化中,有一些东西似乎占用了大量内存。我觉得不是扩展的问题,是内存或者设置的问题
for (int i = 0; i<=numberOfImagesInCurrentArray; i++) {
UIImage *image = [UIImage imageWithContentsOfFile:[currentPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%i.png",i]]];
if (image) {
[convertedArray addObject:image];
}
}
现在的问题是当我处于调试模式时(当我将我的设备连接到 Mac 和 运行 扩展程序,并将扩展程序附加到 "Message" 应用程序时),即使数组包含 30 张图像,扩展 运行 也是完美的。 (占用40M内存)
但是当我 运行 它处于正常模式时(打开 "Message",然后单击文本字段),扩展崩溃了,因为该数组中只有 15 张图像,但是当只有大约10张图,不闪退
我的问题是:这个问题是内存问题引起的吗?或者我在 info.plist 中设置了错误导致调试模式不同?
我遇到了同样的问题。这是因为 iOS 8 键盘扩展的内存限制。
就目前而言,键盘扩展的内存限制约为 30MB。如果你的扩展像你说的那样占用 40M 内存,它会在真正的 iOS 设备上被 OS 立即杀死。
但是调试的时候,iOS好像不再限制它的内存使用了
总结:我正在开发一个应用程序。奇怪的是,当我 运行 它处于调试模式时(将我的设备连接到 Xcode 并单击 运行 按钮),它运行正常。但是当我 运行 它处于正常模式时(没有将它连接到 Xcode,像用户所做的那样正常打开它),它崩溃了。
解决方案:请看下面@skyline75489 的回答,他的回答救了我的命!遇到此问题时,请尝试减小图像的大小。 详情:
现在我正在开发 iOS8 键盘。在键盘的初始化中,有一些东西似乎占用了大量内存。我觉得不是扩展的问题,是内存或者设置的问题
for (int i = 0; i<=numberOfImagesInCurrentArray; i++) {
UIImage *image = [UIImage imageWithContentsOfFile:[currentPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%i.png",i]]];
if (image) {
[convertedArray addObject:image];
}
}
现在的问题是当我处于调试模式时(当我将我的设备连接到 Mac 和 运行 扩展程序,并将扩展程序附加到 "Message" 应用程序时),即使数组包含 30 张图像,扩展 运行 也是完美的。 (占用40M内存)
但是当我 运行 它处于正常模式时(打开 "Message",然后单击文本字段),扩展崩溃了,因为该数组中只有 15 张图像,但是当只有大约10张图,不闪退
我的问题是:这个问题是内存问题引起的吗?或者我在 info.plist 中设置了错误导致调试模式不同?
我遇到了同样的问题。这是因为 iOS 8 键盘扩展的内存限制。
就目前而言,键盘扩展的内存限制约为 30MB。如果你的扩展像你说的那样占用 40M 内存,它会在真正的 iOS 设备上被 OS 立即杀死。
但是调试的时候,iOS好像不再限制它的内存使用了