2012-08-17 2 views
1

phonegap (html5, JQuery, JS)에서 앱을 개발했으며 BT 프린터로 인쇄하기위한 플러그인을 개발하고 싶습니다.android phonegap 맞춤 플러그인 문제가 응답하지 않습니다.

프린터 제조업체의 SDK를 다운로드하고 프로젝트에 필요한 모든 방법을 사용하여 적절한 .jar 파일을 프로젝트에 가져 왔습니다.

인터넷 튜토리얼에 따라 아래 플러그인을 만들어 JS에서 프린터 제조업체 SDK의 JS 메서드를 호출합니다.

JS

var msgbox = function() { 
}; 

msgbox.prototype.show = function(str, success, fail) { 
PhoneGap.exec(success, fail, "msgbox", "show1", [str]); 
}; 
navigator.msgbox = new msgbox(); 

JAVA

public class msgbox extends Plugin { 

    private static final String SHOW = "show"; 
    private static final String SHOW1 = "show1"; 
    private static final Context context = null; 
    private static final int MSG_INDEX = 0; 
    private String msg; 

    @Override 

    public PluginResult execute(String arg0, final JSONArray arg1, String arg2) { 


     if (arg0.equals(SHOW1)) 
     { 
      StarIOPort port = null; 
      byte[] texttoprint = new byte[]{0x1b, 0x40, 0x1b,0x74,0x0D,(byte) 0x91,(byte) 0x92,(byte) 0x93,(byte) 0x94,(byte) 0x95,(byte) 0x96,(byte) 0x97,(byte) 0x98,(byte) 0x99,0x0A,0x0A,0x0A,0x0A,0x0A}; 
      try 
      { 
       port = StarIOPort.getPort("BT:", "mini", 10000); 
       port.writePort(texttoprint, 0, texttoprint.length); 
      } 
      catch (StarIOPortException e) 
      { 
        Builder dialog = new AlertDialog.Builder(ctx); 
        dialog.setNegativeButton("Ok", null); 
        AlertDialog alert = dialog.create(); 
        alert.setTitle("Failure"); 
        alert.setMessage("Failed to connect to printer"); 
        alert.show();  
      } 
      finally 
      { 
       if(port != null) 
       { 
        try 
        { 
         StarIOPort.releasePort(port); 
        } catch (StarIOPortException e) {} 
       } 
      } 
     } 
     return new PluginResult(Status.OK); 
    } 

} 

내가 어떤 오류가 발생하지 않는 프로젝트를 실행할 때, 내가 어떤 경고를받지 못해 내가 프린터로 인쇄되지 않습니다.

무엇이 누락 되었습니까?

답변

0

코드가 완벽 해 보입니다.

config.xml 파일에 다음 코드를 추가하십시오 :

< 플러그인 이름 = "MSGBOX"값 = "Your_Package_name.msgbox">

관련 문제