使用ZBar扫描仪后iOS7电话间隙冻结
我有一个PhoneGap应用程序,在iOS中使用ZBar扫描插件。它允许我使用扫描器几次,但几次尝试后,下一次点击扫描按钮调用插件会导致应用程序冻结30秒到5分钟。然后它将再次恢复正常功能 它仅在安装iOS7的设备上发生。我已经测试过了 我注意到xcode给了我一个“已接收内存警告”的输出消息。这可能有某种关联 有什么想法吗?根据问题,ZBarReaderViewController的使用ZBar扫描仪后iOS7电话间隙冻结,ios,cordova,ios7,zbar-sdk,Ios,Cordova,Ios7,Zbar Sdk,我有一个PhoneGap应用程序,在iOS中使用ZBar扫描插件。它允许我使用扫描器几次,但几次尝试后,下一次点击扫描按钮调用插件会导致应用程序冻结30秒到5分钟。然后它将再次恢复正常功能 它仅在安装iOS7的设备上发生。我已经测试过了 我注意到xcode给了我一个“已接收内存警告”的输出消息。这可能有某种关联 有什么想法吗?根据问题,ZBarReaderViewController的视图属性被保留,因此会泄漏 正如ZBar SDK文档中所述,初始化ZBarReaderViewControlle
视图属性被保留,因此会泄漏
正如ZBar SDK文档中所述,初始化ZBarReaderViewController
时,将读卡器的视图属性设置为autorelease
:
- (IBAction) scanButtonTapped
{
// ADD: present a barcode reader that scans from the camera feed
ZBarReaderViewController *reader = [ZBarReaderViewController new];
// Fixes memory leak for the view property.
[reader.view autorelease];
reader.readerDelegate = self;
reader.supportedOrientationsMask = ZBarOrientationMaskAll;
ZBarImageScanner *scanner = reader.scanner;
// TODO: (optional) additional reader configuration here
// EXAMPLE: disable rarely used I2/5 to improve performance
[scanner setSymbology: ZBAR_I25
config: ZBAR_CFG_ENABLE
to: 0];
// present and release the controller
[self presentModalViewController: reader
animated: YES];
[reader release];
}
谢谢!我添加了[reader.view autorelease];排队时,它似乎工作得很好。