MythiCode / zebra_utlity

MIT License
6 stars 26 forks source link

**DO NOT USE THIS PLUGIN** Known issues with this utility #10

Open HualiangLI opened 3 years ago

HualiangLI commented 3 years ago

I've struggled with this plugin for weeks, and several critical issues were exposed during my attempt. Now I list them as following:

  1. After integrating this plugin into your flutter project, you MUST add the libZSDK_API.a file into your xcode project, or you would not pass the iOS building.
  2. Characters in utf8 encoding can not be printed on iOS, you MUST modify the implementation code under iOS folder. And sadly, this would not be an easy job for non-native devs.
  3. The channel apis were NOT implemented correctly on Android. So, when you call some apis on Android, your app may crash. And codes under onMethodCall function in Printer.java must be updated. This issue is mentioned in #8 .
  4. The result from onPrinterFound callback is NOT reliable. This plugin will return the previously discovered printers when you call discoveryPrinters. So you will notice that when you discovered a printer, it still appears in your found list when you rescan printers event you turn the printer's power off.
  5. Printers may disconnect after several seconds on iOS. This might be a serious bug with the Zebra SDK. So, DO NOT use it on iOS.

According to these issues, I really DO NOT SUGGEST you use this plugin in your flutter app. Trust me, this would be A WASTE OF LIFE if you want to figure out and fix these issues.

And if you really need to print labels with Zebra printers, FIND native devs and use Zebra's official link-os SDK.

alessandrovendrame commented 2 years ago

Could you please explain how did you add the libZSDK_API.a to your xCode project? Please I'm stuck and I must use this package to interface with zebra printer.