2017-07-24 2 views
1

Ich bin frischer zu Android, ich entwickle Android App für POS-System.Iber ich habe Android Demo-App für POS (Point of Sale) System vom Hersteller erhalten.Ich habe seine Bibliothek hinzugefügt zu meinem Android-Projekt. Aber Drucker funktioniert nicht für meine App, aber die App funktioniert ordnungsgemäß.Wie Drucker Sdk POS-System Android App

Dies ist der Hersteller Drucker Activtity:

 private class contentPrintThread extends Thread { 
       @Override 
       public void run() { 
        super.run(); 
        setName("Content Print Thread"); 
        try { 
         ThermalPrinter.start(PrinterActivity.this); 
         ThermalPrinter.reset(); 
         ThermalPrinter.setAlgin(ThermalPrinter.ALGIN_LEFT); 
         ThermalPrinter.setLeftIndent(leftDistance); 
         ThermalPrinter.setLineSpace(lineDistance); 
         if (wordFont == 4) { 
          ThermalPrinter.setFontSize(2); 
          ThermalPrinter.enlargeFontSize(2, 2); 
         } else if (wordFont == 3) { 
          ThermalPrinter.setFontSize(1); 
          ThermalPrinter.enlargeFontSize(2, 2); 
         } else if (wordFont == 2) { 
          ThermalPrinter.setFontSize(2); 
         } else if (wordFont == 1) { 
          ThermalPrinter.setFontSize(1); 
         } 
         ThermalPrinter.setGray(printGray); 
         ThermalPrinter.addString("test123"); 
         ThermalPrinter.printString(); 
         ThermalPrinter.clearString(); 
         ThermalPrinter.walkPaper(100); 
        } catch (Exception e) { 
         e.printStackTrace(); 
         Result = e.toString(); 
         if (Result.equals("com.telpo.tps550.api.printer.NoPaperException")) { 
          nopaper = true; 
         } else if (Result.equals("com.telpo.tps550.api.printer.OverHeatException")) { 
          handler.sendMessage(handler.obtainMessage(OVERHEAT, 1, 0, null)); 
         } else { 
          handler.sendMessage(handler.obtainMessage(PRINTERR, 1, 0, null)); 
         } 
        } finally { 
         handler.sendMessage(handler.obtainMessage(CANCELPROMPT, 1, 0, null)); 
         if (nopaper) { 
          handler.sendMessage(handler.obtainMessage(NOPAPER, 1, 0, null)); 
          nopaper = false; 
          return; 
         } 
         ThermalPrinter.stop(PrinterActivity.this); 
         Log.v(TAG, "The Print Progress End !!!"); 
         if (isClose) { 
          finish(); 
         } 
        } 
       } 
      } 



private class MyHandler extends Handler { 
      @Override 
      public void handleMessage(Message msg) { 
       if (stop == true) 
        return; 
       switch (msg.what) { 
        case NOPAPER: 
         noPaperDlg(); 
         break; 
        case LOWBATTERY: 
         AlertDialog.Builder alertDialog = new AlertDialog.Builder(PrinterActivity.this); 
         alertDialog.setTitle(R.string.operation_result); 
         alertDialog.setMessage(getString(R.string.LowBattery)); 
         alertDialog.setPositiveButton(getString(R.string.dlg_ok), new DialogInterface.OnClickListener() { 
          @Override 
          public void onClick(DialogInterface dialogInterface, int i) { 
          } 
         }); 
         alertDialog.show(); 
         break; 
        case PRINTVERSION: 
         dialog.dismiss(); 
         if (msg.obj.equals("1")) { 
          textPrintVersion.setText(printVersion); 
         } else { 
          Toast.makeText(PrinterActivity.this, R.string.operation_fail, Toast.LENGTH_LONG).show(); 
         } 
         break; 
        case PRINTBARCODE: 
         new barcodePrintThread().start(); 
         break; 
        case PRINTQRCODE: 
         new qrcodePrintThread().start(); 
         break; 
        case PRINTPAPERWALK: 
         new paperWalkPrintThread().start(); 
         break; 
        case PRINTCONTENT: 
         Log.e("task","in printcontent case"); 
         new contentPrintThread().start(); 
         break; 
        case MAKER: 
         new MakerThread().start(); 
         break; 
        case PRINTPICTURE: 
         new printPicture().start(); 
         break; 
        case CANCELPROMPT: 
         if (progressDialog != null && !PrinterActivity.this.isFinishing()) { 
          progressDialog.dismiss(); 
          progressDialog = null; 
         } 
         break; 
        case EXECUTECOMMAND: 
         new executeCommand().start(); 
         break; 
        case OVERHEAT: 
         AlertDialog.Builder overHeatDialog = new AlertDialog.Builder(PrinterActivity.this); 
         overHeatDialog.setTitle(R.string.operation_result); 
         overHeatDialog.setMessage(getString(R.string.overTemp)); 
         overHeatDialog.setPositiveButton(getString(R.string.dlg_ok), new DialogInterface.OnClickListener() { 
          @Override 
          public void onClick(DialogInterface dialogInterface, int i) { 
          } 
         }); 
         overHeatDialog.show(); 
         break; 
        default: 
         Toast.makeText(PrinterActivity.this, "Print Error!", Toast.LENGTH_LONG).show(); 
         break; 
       } 
      } 
     } 

***** Dies ist der Druck Knopf-

buttonContentPrint.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       String exditText; 
       exditText = editTextLeftDistance.getText().toString(); 
       if (exditText == null || exditText.length() < 1) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.left_margin) + getString(R.string.lengthNotEnougth), Toast.LENGTH_LONG).show(); 
        return; 
       } 
       leftDistance = Integer.parseInt(exditText); 
       exditText = editTextLineDistance.getText().toString(); 
       if (exditText == null || exditText.length() < 1) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.row_space) + getString(R.string.lengthNotEnougth), Toast.LENGTH_LONG).show(); 
        return; 
       } 
       lineDistance = Integer.parseInt(exditText); 
       printContent = editTextContent.getText().toString(); 
       exditText = editTextWordFont.getText().toString(); 
       if (exditText == null || exditText.length() < 1) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.font_size) + getString(R.string.lengthNotEnougth), Toast.LENGTH_LONG).show(); 
        return; 
       } 
       wordFont = Integer.parseInt(exditText); 
       exditText = editTextPrintGray.getText().toString(); 
       if (exditText == null || exditText.length() < 1) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.gray_level) + getString(R.string.lengthNotEnougth), Toast.LENGTH_LONG).show(); 
        return; 
       } 
       printGray = Integer.parseInt(exditText); 
       if (leftDistance > MAX_LEFT_DISTANCE) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.outOfLeft), Toast.LENGTH_LONG).show(); 
        return; 
       } else if (lineDistance > 255) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.outOfLine), Toast.LENGTH_LONG).show(); 
        return; 
       } else if (wordFont > 4 || wordFont < 1) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.outOfFont), Toast.LENGTH_LONG).show(); 
        return; 
       } else if (printGray < 0 || printGray > 12) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.outOfGray), Toast.LENGTH_LONG).show(); 
        return; 
       } 
       if (printContent == null || printContent.length() == 0) { 
        Toast.makeText(PrinterActivity.this, getString(R.string.empty), Toast.LENGTH_LONG).show(); 
        return; 
       } 
       if (LowBattery == true) { 
        handler.sendMessage(handler.obtainMessage(LOWBATTERY, 1, 0, null)); 
       } else { 
        if (!nopaper) { 
         setTitle("print character"); 
         progressDialog = ProgressDialog.show(PrinterActivity.this, getString(R.string.bl_dy), getString(R.string.printing_wait)); 
         handler.sendMessage(handler.obtainMessage(PRINTCONTENT, 1, 0, null)); 
//      handler.sendMessage(handler.); 
        } else { 
         Toast.makeText(PrinterActivity.this, getString(R.string.ptintInit), Toast.LENGTH_LONG).show(); 
        } 
       } 

      } 
     }) 

;

1.kann ich Hersteller-App als Modul in meinem Projekt hinzufügen?

2.how Fügen Sie diese Codes in meiner Anwendung, und andere besondere Möglichkeiten, es zu tun

Antwort

0

auf der SDK Herstellung bereitgestellt Es gibt einen Ordner Bibliothek, der Kopieren Der Lib-Ordner zu einem Projekt Dann, nachdem Sie Kopiere es Du gehst mit der rechten Maustaste auf den Lib-Ordner, ich nehme an, Sie haben es kopiert App-Ordner mit der rechten Maustaste auf den Ordner libs, dann als Bibliothek hinzufügen, es wird hinzugefügt, jetzt können Sie den Drucker hinzufügen Aktivität: zu Ihrer MainActivity ,, Erstellen Formular, wo Sie krank Daten eingeben und dann Geldbörse diese Daten zu Ihrem btnprint

Wenn Sie ein Problem haben, zögern Sie nicht zu fragen, ich habe Software für beide tps390 und tps550 Sie ca entwickelt n folge mir auf Twitter @macfranci oder instagram

Verwandte Themen