I've been looking into different API/SDKs that would be best and easiest to integrate with my React Native iPhone app. This is an internal employee app, that once a form is submitted I would like to automatically print out a label from a thermal printer (e.g. Brother QL1110NWB).
Some options I found are:
React Native:
Brother SDK:
Apple AirPrint:
Does anyone have experience with any of these API/SDKs and can recommend best method for easy integration and be able to print directly without interaction?
Thank you!
If you can dictate the hardware to make sure it is compatible, then the Brother SDK will have the easiest integration and be transparent to the user.
Apple restricts Bluetooth Classic devices from connecting to iOS unless they are MFi certified, which adds to the price but enables the External Accessory Framework at the OS level. Device manufacturers can then sell a printer that is 'iOS certified' like the Brother QL1110NWB and provide the SDK to use it.
How to use bluetooth classic instead of le
You would need to write a React Native binding for each target device family to use the SDK's OS specific libraries. Brother has an iOS, Android and Xamarin SDK available, but I don't see one for React, so you would need to wrap their iOS SDK with hooks to invoke your print on demand. Before you start, contact Brother support or your sales rep, because they may be working on React Native SDK, or your organization may have enough buying power to request one. Either way, it's a good practice to make this an interface at the base React level so that new printers or platforms can be added just by implementing custom native device adapters.