连接Android设备与打印机和打印文件

时间:2013-12-16 08:26:25

标签: android sockets printing android-wifi

我正在开发一个应用程序,我想在其中集成打印功能。是否可以从应用程序将文件发送到打印机(适用于任何公司或品牌)并打印出来。

到目前为止,谷歌搜索并发现以下代码,但没有运气。

try {

        client = new Socket(ipAddress, port);

        // create a byte array to file
        byte[] mybytearray = new byte[(int) file.length()];

        fileInputStream = new FileInputStream(file);
        bufferedInputStream = new BufferedInputStream(fileInputStream);
        // read the file
        bufferedInputStream.read(mybytearray, 0, mybytearray.length);

        outputStream = client.getOutputStream();
        // write file to the output stream byte by byte
        outputStream.write(mybytearray, 0, mybytearray.length);
        outputStream.flush();
        bufferedInputStream.close();
        outputStream.close();
        client.close();

    } catch (UnknownHostException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

注意:我不想使用Google云打印。任何帮助将不胜感激。感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用lpdspooler http://lpdspooler.sourceforge.net/,也就是说,如果打印机支持LPR / LPD。如果您可以提供有关环境的更多详细信息(打印机等)。

答案 1 :(得分:0)

除非打印机启用云,否则无法直接连接到打印机并从Android打印。

但是,您可以将打印机添加到Google云打印帐户,然后使用可用的API进行打印。

请注意,打印机所连接的计算机需要处理才能处理打印作业。