0
我有一個PhoneGap應用程序,它使用iOS中的ZBar掃描插件。它允許我多次使用掃描儀,但在幾次嘗試之後,下一次單擊掃描按鈕以調用插件會導致應用程序在30秒到5分鐘之間凍結。然後它會再次恢復正常功能。iOS7 PhoneGap使用ZBar掃描儀後凍結
它只發生在安裝iOS7的設備上。我已經測試過了。
我注意到xcode給了我一個「收到的內存警告」的輸出消息。它可能會以某種方式相關。
任何想法?
我有一個PhoneGap應用程序,它使用iOS中的ZBar掃描插件。它允許我多次使用掃描儀,但在幾次嘗試之後,下一次單擊掃描按鈕以調用插件會導致應用程序在30秒到5分鐘之間凍結。然後它會再次恢復正常功能。iOS7 PhoneGap使用ZBar掃描儀後凍結
它只發生在安裝iOS7的設備上。我已經測試過了。
我注意到xcode給了我一個「收到的內存警告」的輸出消息。它可能會以某種方式相關。
任何想法?
根據this問題,ZBarReaderViewController
的view
屬性被保留,因此泄漏。
由於zbar和SDK文檔here中所述,當您在初始化設置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];行,它似乎工作正常。 –