Why doe the epson_epos printing Flutter package work on my Android Phone but not my Android Tablet?

322 Views Asked by At

Phone: Galaxy A50, Android version - 11

Tablet: Galaxy Tab S7 FE 5G, Android version -13

both devices are using system's the "Default Print Service" located in Settings > Connections > more connections settings > Printing

from build.gradle:

    defaultConfig {
        
        applicationId "com.example.myFoodApp"
        minSdkVersion 21
        targetSdkVersion 33
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }

I have implement the epson_epos package and was testing it on my phone until I got the tablet. I got the code to work on the phone and split orders between two printers but when I try to print on my tablet nothing happens.

The printer details required:

  • commands: [{id: 'addTextAlign', value: 'LEFT'},...]

    series: 'TM_T20'

    target: 'USB:/dev/bus/001/003'

    type: 'USB'

This is the final piece of code that initiates the printing.

  static Future<dynamic> onPrint(
      Map<String, dynamic> printer, List<Map<String, dynamic>> commands) async {
    final Map<String, dynamic> params = {
      "type": printer['type'],
      "series": printer['series'],
      "commands": commands,
      "target": printer['target']
    };
    //the params for my tablet and phone are the same
      return await _channel.invokeMethod('onPrint', params);
  
  }

At this point my phone and my tablet have the exact same parameters (series, target, type and commands) and then _invokeMethod is used.

At this point my phone proceeds with printing with the following pop-up

enter image description here

However, this does not happen with the tablet.

I have downloaded the TM Assistant app by Epson on my tablet from the Play Store and it picks up the printers and successfully prints a test print to the printer.

What could the issue be with my app?

0

There are 0 best solutions below