2017-01-09 43 views
0
  Thread mThread = new Thread() { 
       public void run(){ 
        Looper.prepare(); 
        try{ 
         if(findBT()){ 
          if(openBT()){ 
           sendPrintData(printStr.toString()); 
           //closeBT(); 
           handler.sendEmptyMessage(12); 
          }else{ 
           handler.sendEmptyMessage(11);              
          } 
         }else{ 
          handler.sendEmptyMessage(11);      
         } 
         //endPreparations(); 
         //FileHandler.zapInvoiceRecords(getApplicationContext()); 
        }catch(IOException ioex){ 
         ioex.printStackTrace(); 
        } 
       }     
      }; 
      mThread.start(); 
      Looper.loop(); 

但是,如果發票是長打印不打印所有。你可以這樣做嗎? 打印機不能處理所有需要的數據。Android藍牙打印發票無法正常工作

回答

0

如果長時間的打印(長字符串)是由這意味着代碼打印,

  • 有可能在字符流一些限制發送到打印機OR
  • 藍牙打印機可以」將收不到那麼快,導致下降的數據

要解決這些類型的問題發送數據塊中的數據(原始字符串分解成幾個字符串,並使用while循環來發送這些)。保留256個或更少字符的塊。或者可能是打印機正確打印的大小。