Android打印到网络打印机

Android打印到网络打印机,android,Android,我想在我的android应用程序中加入一项功能,通过WiFi从网络打印机打印图像。我尝试了下面的代码,贴在stackoverflow上,但我只能打印文本:(如果我想打印图像,该怎么办 try { Socket sock = new Socket("192.168.1.222", 9100); PrintWriter oStream = new PrintWriter(sock.getOutputStream()); oStream.println("HI,test

我想在我的android应用程序中加入一项功能,通过WiFi从网络打印机打印图像。我尝试了下面的代码,贴在stackoverflow上,但我只能打印文本:(如果我想打印图像,该怎么办

try
{
    Socket sock = new Socket("192.168.1.222", 9100);
    PrintWriter oStream = new PrintWriter(sock.getOutputStream());
        oStream.println("HI,test from Android Device");
        oStream.println("\n\n\n");
        oStream.close();
        sock.close(); 
    }
    catch (UnknownHostException e) 
    {
        e.printStackTrace();
    } 
    catch (IOException e) 
    { 
        e.printStackTrace();
    } 
}

参考此链接否这无助于打印图像当您尝试发送图像时您面临的问题是什么…请您共享logcat以供我们参考。在上面的代码中,我们使用println函数,因此它仅用于打印文本…我对上面的代码做了一些更改,并从套接字输出流创建了一个OutputStream对象。然后我向我们介绍了它ed写函数并发送字符串的字节数组,它打印得很好…但当我传递图像的字节数组时,它只打印二进制形式的数据而不是图像…代码:void PrintImage(字符串名称、字符串年龄、字节[]图像)抛出异常{try{Socket sock=new Socket(“192.168.1.XXX”,9100);OutputStream oStream=sock.getOutputStream();oStream.flush();String lineBreak=“\r\n”;String dataLine=“\t名称:\t\t”+name+”\t\tAge:\t“+age+”;oStream.write(dataLine.getBytes());oStream.flush();oStream.write(lineBreak.getBytes());oStream.flush();oStream.write(image);oStream.flush();oStream.close();sock.close();}捕获(异常e){//TODO:句柄异常抛出e;}