下面的代码构建没有任何错误,我也成功完成了所有配置,
在移动设备中运行应用程序时未连接到打印机,它返回错误,很好。
但是,当我在与 Epson Tm-M30 打印机具有相同网络的已连接平板电脑上运行它时,它不会打印,也不会出现错误。请问我需要帮助为什么它不打印?
enter code here
final Context sContext = this;
Printer printer = null;
try {
printer = new Printer(Printer.TM_M30, Printer.MODEL_ANK, this);
}
catch (Epos2Exception e) {
//Displays error messages
Toast.makeText(sContext, "Error1", Toast.LENGTH_SHORT).show();
}
//new
final Context mContext = this;
printer.setReceiveEventListener(new ReceiveListener() {
@Override
public void onPtrReceive(Printer printer, int code, PrinterStatusInfo printerStatusInfo,
String s) {
if (code == com.epson.epos2.Epos2CallbackCode.CODE_SUCCESS){
}else{
Toast.makeText(mContext, "Printer can't be connected. Please try again",
Toast.LENGTH_SHORT).show();
}
}
});
try {
printer.addTextAlign(Printer.ALIGN_CENTER);
printer.addText("Hello World");
}
catch (Epos2Exception e) {
Toast.makeText(mContext, "Can't print Hello World. Please try again",
Toast.LENGTH_SHORT).show();
}
try {
printer.connect("TCP:192.168.100.21", Printer.PARAM_DEFAULT);
}
catch (Epos2Exception e) {
Toast.makeText(mContext, "Error1", Toast.LENGTH_SHORT).show();
}
try {
printer.sendData(Printer.PARAM_DEFAULT);
}
catch (Epos2Exception e) {
Toast.makeText(mContext, "Error2", Toast.LENGTH_SHORT).show();
// Abort process
}
//public void onPtrReceive(final Printer printerObj, final int code, final PrinterStatusInfo
status,
//final String printJobId) {
ReceiveListener printrecieve_listener = new ReceiveListener() {
@Override
public void onPtrReceive(final Printer printerObj, final int code, PrinterStatusInfo
printerStatusInfo, String printJobId) {
runOnUiThread(new Runnable() {
@Override
public synchronized void run() {
if (code == com.epson.epos2.Epos2CallbackCode.CODE_SUCCESS) {
} else {
Toast.makeText(mContext, "Error3", Toast.LENGTH_SHORT).show();
}
}
});
new Thread(new Runnable() {
@Override
public synchronized void run() {
}
}).start();