2016-08-12 1 views
0

J'ai été téléchargé epson android sdk de https://download.epson-biz.com/modules/pos/index.php?page=single_soft&cid=5228&pcat=7&pid=4179. J'ai une imprimante série Epson TM-T81, Lorsque j'essaie de connecter ce sdk avec mon imprimante, il montre le code d'erreur (ERR_UNSUPPORTED), mais quand je change la série d'imprimante à TM-T82 ou un autre du spinner, ça marche bien avec mon imprimante TM-T81 mais ça ne marche pas quand je sélectionne TM-T81.Quelle est la raison?EPSON android SDK ne fonctionne pas avec la série TM-T81

Répondre

0

Vous pouvez utiliser comme ceci. Cette réponse va vous aider.

public boolean initializeObject(Printer printerSeries) { 

    try { 

     // mPrinter=new Printer(Printer.TM_T88,Printer.LANG_EN,mContext); 
     or 
     mPrinter=new Printer(printerSeries,Printer.LANG_EN,mContext); 
    } 
    catch (Exception e) { 
     ShowMsg.showException(e, "Printer", mContext); 
     return false; 
    } 

    mPrinter.setReceiveEventListener(new com.epson.epos2.printer.ReceiveListener() { 
     @Override 
     public void onPtrReceive(Printer printer, int i, PrinterStatusInfo printerStatusInfo, String s) { 

      runOnUiThread(new Runnable() { 
       @Override 
       public synchronized void run() { 
        disconnectPrinter(); 
        new Thread(new Runnable() { 
         @Override 
         public void run() { 
          disconnectPrinter(); 
         } 
        }).start(); 
       } 
      }); 
     } 
    }); 
    return true; 
} 

public void finalizeObject() { 
    if (mPrinter == null) { 
     return; 
    } 

    mPrinter.clearCommandBuffer(); 

    mPrinter.setReceiveEventListener(null); 

    mPrinter = null; 
} 

public boolean printData(String receiptPrintIP) { 
    if (mPrinter == null) { 
     return false; 
    } 

    if (!connectPrinter(receiptPrintIP)) { 
     return false; 
    } 

    PrinterStatusInfo status = mPrinter.getStatus(); 
    if (!isPrintable(status)) { 
     ShowMsg.showMsg(printPOS2Help.makeErrorMessage(status), mContext); 
     try { 
      mPrinter.disconnect(); 
     } 
     catch (Exception ex) { 
      // Do nothing 
     } 
     return false; 
    } 

    try { 
     mPrinter.sendData(Printer.PARAM_DEFAULT); 
    } 
    catch (Exception e) { 
     ShowMsg.showException(e, "sendData", mContext); 
     try { 
      mPrinter.disconnect(); 
     } 
     catch (Exception ex) { 
      // Do nothing 
     } 
     return false; 
    } 

    return true; 
} 

public boolean connectPrinter(String receiptPrintIP) { 
    boolean isBeginTransaction = false; 
    if (mPrinter == null) { 
     return false; 
    } 

    try { 
     mPrinter.connect(receiptPrintIP, Printer.PARAM_DEFAULT); 
    } 
    catch (Exception e) { 
     ShowMsg.showException(e, "connect", mContext); 
     return false; 
    } 

    try { 
     mPrinter.beginTransaction(); 
     isBeginTransaction = true; 
    } 
    catch (Exception e) { 
     ShowMsg.showException(e, "beginTransaction", mContext); 
    } 

    if (isBeginTransaction == false) { 
     try { 
      mPrinter.disconnect(); 
     } 
     catch (Epos2Exception e) { 
      // Do nothing 
      return false; 
     } 
    } 

    return true; 
}