1

phonegap (html5、JQuery、JS) でアプリを開発しましたが、BT プリンターに印刷するプラグインを開発したいと考えています。

プリンター メーカーの SDK をダウンロードし、適切な .jar ファイルをプロジェクトにインポートし、プロジェクトで必要なすべてのメソッドを含めました。

JS からプリンター メーカーの SDK の Java メソッドを呼び出すために、インターネット チュートリアルに従ってプラグインを作成します。

テストアプリを実行すると、常に「プリンターに接続できませんでした」というメッセージが表示されます。

私のJavaコードは次のとおりです

public PluginResult execute(String action, JSONArray data, String callbackId) {


    if (NATIVE_ACTION_STRING.equals(action)) {


        this.ctx.runOnUiThread(new Runnable()
        {
            public void run()
            {
                String resultType = null;
                StarIOPort port = null;
                String message = null;
                String portName = "bt:";
                String portSettings = "mini";
                byte[] texttoprint = new byte[]{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(portName, portSettings, 10000, (Context)ctx);

                    try
                    {
                        Thread.sleep(500);
                    }
                    catch(InterruptedException e) {}


                    port.writePort(texttoprint, 0, texttoprint.length);

                    try
                    {
                        Thread.sleep(3000);
                    }
                    catch(InterruptedException e) {}    

                }
                catch (StarIOPortException e)
                {

                    Builder dialog = new AlertDialog.Builder((Context)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 null;
}}

StarMicronics SDK に関する知識がある場合は、アドバイスをお願いします。

4

2 に答える 2

1

追加

    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-permission android:name="android.permission.BLUETOOTH"></uses-permission>

あなたのマニフェストで

于 2012-09-11T17:47:17.940 に答える
0

ポータブル プリンターの Bluetooth モードを、使用しているオペレーティング システムと同等に設定してください: Bluetooth モード -> Android、Bluetooth(IAP) -> I-phone

于 2014-03-13T07:43:25.887 に答える