There are no unreleased changes.
- Fix rare crash when stopping the barcode scanner
Special thanks to @anuraagshakya for the work on this release!
- Guard all uses of iOS 10+ classes and APIs with appropriate @available() tests
Special thanks to @bayoung for the work on this release!
- Made call to freezeCapture non-blocking.
Special thanks to @shagedorn for the work on this release!
- Fixed warnings being generated with latest Xcode version.
Special thanks to @anuraagshakya for the work on this release!
- Added the ability to scan from a particular camera on startup with startScanningWithCamera:resultBlock:error.
- Fixed build warnings in Xcode 9.4.
Special thanks to @badchoice for all of the work on this release!
- Updated app for deprecation warnings in iOS 11
- Improvements to performance of still capture
- Fixed blocking issue with scanRect call
- Handle deprecation of devicesWithMediaType in iOS 10
- Fixed an issue where stopScanning() could potentially hang
- Updated sample project for iOS 10 deprecation warnings
Thanks to @alistra and @shagedorn with their help in this release!
- Fixed issue with orientation changes not registering under some circumstances.
Special thanks to @juliangoacher for all of the work on this release!
- Setting the
scanRect
must now be set in thedidStartScanning
block. - Removed MTBTorchModeAuto
- Added error handling when setting torch mode.
Special thanks to @shagedorn for all of the work on this release!
- Setting the
camera
property directly is now deprecated in favor of the more-helpfulsetCamera:error:
method. - Methods that accept an error argument now have a return value to satisfy Xcode analyzer.
Special thanks to @shagedorn for all of the work on this release!
- Fixed issue where calling a method on UIImagePickerController could prompt a rejection from the App Store if a
NSPhotoLibraryUsageDescription
is not provided in the Info.plist file. Details are here. Thanks @brblakley! - Fixed an issue with setting the camera using the
camera
property setter
- Errors are now propagated to the
startScanning
methods. You may now supply an NSError to this method that will be updated in the event scanning could not be started. - The scanning methods have now been changed to:
- (void)startScanningWithError:(NSError **)error;
- (void)startScanningWithResultBlock:(void (^)(NSArray *codes))resultBlock error:(NSError **)error;
- Now uses AVCaptureFocusModeContinuousAutoFocus by default, per issue #81. Thanks @JacopoKenzo!
- Fixed bug where
resultBlock
could be called when nil. Thanks @navicor90!
- Fixed bug with Carthage support and missing import
- Added a minor bug fix for CocoaPods support
- Added support for Carthage. Thanks @hardikdevios!
- Removed NSLog statement Thanks @brblakley!
- Added support for tapping the view to focus the camera
- Fixed an issue with iOS 7 support. Thanks @kiwox!
- Fixed an issue with freezing the camera and stopping capture in the demo project. Thanks @huuang!
- Fixed issue with scanning still images on iOS 7.
- Fixed flicker issue with setting
torchMode
property. To avoid flickering when turning on the torch, set thetorchMode
property after you callstartScanning
.
- Setting the
scanRect
value now correctly checks the video orientation. Thanks @peterpaulis!
- Added support for capturing still images with new
captureStillImage:
method. Thanks @peterpaulis!
- Fixed issue where the
scanRect
property needed to be explicitly set in order to scan barcodes.
- Added the ability to limit scanning to only a section of the screen using the new
scanRect
property. See the fileMTBAdvancedExampleViewController
in the demo project for an example. Thanks @Shannon-Yang!
- Added the
didStartScanningBlock
property, which stores a block that's called when the barcode scanner initializes. This is useful for presenting an activity spinner while the scanner loads. Thanks to @jaybowong for the suggestion! - Exposed the
resultBlock
property, which will allow the results to be dynamically set before or after the scanner starts scanning. - Added a
startScanning
method, which will start scanning using the block properties set by the user. See README for sample usage of this.
- Added the
previewLayer
property to expose the underlying preview layer. For those not using auto layout, it may be necessary to adjust this layer when the device rotates.
- The
hasTorch
method can now be called when the scanner is not scanning. (Thanks felipowsky!)
Features:
- Added hasTorch method. (Thanks to felipowsky for the implementation, and jaybowong for the suggestion!)
- Added
freezeCapture
andunfreezeCapture
methods. (Thanks felipowsky!)
Allow setting torchMode to On before scanner starts. (Thanks felipowsky!)
Added support for controlling the torch. (Thanks felipowsky!)
Bug Fixes:
- Removed duplicate method call
Bug Fixes:
- Further fixes for issue #25: focus issue
Bug Fixes:
- Fixed an issue with the auto focus range restriction and focus point incorrectly persisting. (Thanks sebastianludwig!). Read more here.
Enhancements:
- Scan codes from the front or back camera! Thanks to lanbozhang.
Enhancements:
- Use AVCaptureSessionPresetHigh for session preset for higher quality video. (Thanks @rshevchuk!)
Bug Fixes:
- Removed CocoaPods build phases from test target to fix issue #19.
Enhancements:
- Added support for the following:
- AVMetadataObjectTypeInterleaved2of5Code
- AVMetadataObjectTypeITF14Code
- AVMetadataObjectTypeDataMatrixCode
Thanks to @hdoria for bringing this to my attention!
Enhancements:
- The capture preview layer now inherits the corner radius of the previewView's layer. Thanks @tupps!
Enhancements:
- Removed
scanningIsAvailable
andscanningIsAvailableAndAllowed
methods in favor ofrequestCameraPermissionWithSuccess:
, which requests camera permission and returns the result in a block.
Enhancements:
- Added
scanningIsAvailableAndAllowed
andscanningIsProhibited
methods. Thanks to @MattLewin for the fix!
Bug Fixes:
- Fixed issue with preview orientation when starting in landscape. Thanks to @laptobbe for the fix!
Bug Fixes:
- Updated
captureOrientationForInterfaceOrientation
to handle all cases, including the newUIInterfaceOrientationUnknown
. Thanks to @emilstahl for the fix! - Updated sample project to recommended settings for Xcode 6
Bug Fixes:
stopScanning
was not correctly discarding the existing session, causing a lock.- Scanner now stops scanning on a background thread
Thanks to @brandonschlenker for the fix!
Bug Fixes:
- The logic to check for the unsupported type (
AVMetadataObjectTypeFace
) was inverted. Thanks to @Dario848 for the fix!
Bug Fixes:
- Fixed issue with setting auto range restriction and focus point of interest on older models of iPads
Version 0.1.2 adds improvements to documentation and formatting.
Demo Project Enhancements:
- Added Kiwi testing framework
Features:
- Allow calling of
stopScanning
if scanning is unavailable to the device to make everything a little cleaner
Bug Fixes:
- Fixed issue with podspec
source_files
attribute
Initial release.