2017-04-22 11 views
7

Đây là my Code hereDữ liệu in nhiệt của SAMSUNG EPSON từ chế độ xem trên web khi nhấp? Nếu không tìm thấy máy in?

đây Trong hoạt động của tôi Tôi đang sử dụng Epson SDK để in dạng dữ liệu web-view để hoạt động android ..

Vì vậy, trên Web-veiw onclick Nó sẽ bắt đầu Hoạt động máy in và Nó sẽ in

Những gì tôi đang cố gắng làm là ..... OnClick từ Web-view nó sẽ Mở Hoạt động máy in để nó nên in và Exit ...

vì vậy, ở đây tôi đã tạo ra một Web-view .. Với sự giúp đỡ của JS nó sill Mở hình thức hoạt động của tôi Web-view (onclick) cho đến bây giờ nó tốt ... Nhưng tôi tri ed để Thêm in và thoát .. onclick nhưng không hoạt động ... Vì tôi cần chọn ngôn ngữ và Kiểu Máy in ....

Bao giờ trong shared_DiscoveryActivity Tôi đang thêm Máy in và lưu nó trong các định dạng dùng chung ... vì vậy nó sẽ không hỏi nữa ... làm việc

vì vậy, đây vấn đề của tôi nó là

1) Printer yêu cầu Model No and Language vì vậy, có thể bất kỳ một đề nghị tôi như thế nào để cho họ bằng tay thay vì lựa chọn đây là Mã Cũ

mPrinter = new Printer(((SpnModelsItem) mSpnSeries.getSelectedItem()).getModelConstant(), 
          ((SpnModelsItem) mSpnLang.getSelectedItem()).getModelConstant(), 
          mContext); 

Đối với điều này Tôi đã nhận những giá trị tại System.out.print

System.out:----- spnSeries -----android.widget.Spinner{24440249 VFED..C. ........ 0,444-466,516 #7f0e007b app:id/spnModel} 
System.out: ----- lang -----android.widget.Spinner{1a6c617c VFED..C. ........ 0,604-366,676 #7f0e007d app:id/spnLang} 
System.out: ----- printer [email protected] 

2) Đây là chính Vấn đề Ở đây tôi đang xác định máy in Trong Shared Pinter So In Mã của tôi Nó sẽ Check for Printer On địa chỉ đó

Nhưng Dưới đây Nếu máy in không tìm thấy tôi nên làm gì đây ...

Vì On webview máy in sẽ bắt đầu từ Backend .. Nhưng App vẫn còn trong webview Vì vậy, bị rơi nó ... Xin gợi ý cho tôi về loại

Cập nhật 1

Ở đây tôi đã thêm một file mới Test_P

này sẽ in ở chế độ nền mà không hiển thị bất kỳ thông tin cho người dùng onclick Nó sẽ bắt đầu in Đây Vấn đề của tôi là Nếu Printer is offline Hoặc User is không phải trên cùng một ứng dụng mạng là Crashing thay vì đó tôi đã cố gắng để đưa ra một thông điệp rằng in không avilable/Conffiged Xin vui lòng thử lại ... nhưng The Text hoặc Alert không hiển thị.

Tôi nhận được lỗi này Nếu máy in đang ẩn hoặc Not Found

FATAL EXCEPTION: main 
Process: com.epson.epos2_printer, PID: 15489 
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getString(int)' on a null object reference 
at com.epson.epos2_printer.ShowMsg.showException(ShowMsg.java:16) 
at com.epson.epos2_printer.Test_P.connectPrinter(Test_P.java:173) 
at com.epson.epos2_printer.Test_P.printData(Test_P.java:249) 
at com.epson.epos2_printer.Test_P.runPrintReceiptSequence(Test_P.java:295) 
at com.epson.epos2_printer.Test_P.access$200(Test_P.java:33) 
at com.epson.epos2_printer.Test_P$2.run(Test_P.java:128) 
at android.os.Handler.handleCallback(Handler.java:739) 
at android.os.Handler.dispatchMessage(Handler.java:95) 
at android.os.Looper.loop(Looper.java:150) 
at android.app.ActivityThread.main(ActivityThread.java:5408) 
at java.lang.reflect.Method.invoke(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:372) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:964) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:759) 

Trên thực tế Nếu máy in Không Khả dụng nó nên đến máy in Config và Sau đó in một lần nữa ,,, Nhưng tôi đã cố gắng để Thực hiện một msg Nhưng nó Xin vui lòng giúp tôi về điều này nhờ ....

Trả lời

2

lần Kiểm tra [Epson ePOS SDK for Android User Manual][1]

bạn cần phải tải không có hiển thị Lựa chọn

Sau đó đi đến

  1. lựa chọn máy in (lớp khởi tạo) Khởi tạo lớp Printer và chọn máy in kiểm soát.

Bạn sẽ thấy điều này ...

Printer printer = null; 
try { 
printer = new Printer(Printer.TM_T88, Printer.MODEL_ANK, this); 
} 
catch (Epos2Exception e) { 
//Displays error messages 
} 

trong mã của bạn Chỉ cần Add này

mPrinter = new Printer(Printer.TM_T88, Printer.MODEL_ANK, this); 

Ở đây tôi đã đưa TM_T88 nó hỗ trợ Hầu hết các mô hình máy in ... Nếu bạn Mô hình máy in là Cụ thể rồi Đưa ra ... Theo cách thủ công hoặc cách khác Giữ nguyên mã số

Điều này hoạt động tốt trên tất cả các máy in nhiệt EPSON ..

+0

Cảm ơn câu trả lời Bạn có thể vui lòng kiểm tra câu hỏi cập nhật của tôi ... –

Các vấn đề liên quan