0

I'm working on an Android print service application which is supposed to allow the user to do the following: browse through the phone's internal storage and send the selected file to an IPP-enabled printer to print.

I've combed the net for the past few days, but i've only found one solution [How to use ipp(Internet Printing Protocol) with HTTP to print file in android? that somewhat makes sense to me. However, i've no idea how to go on from here on, besides knowing that a http put request must be made to the printer's url. Any help? Thanks

Note: the Google Cloud Print is NOT an option for me.

Community
  • 1
  • 1
  • 1
    If you're a student: study RFCs and start coding :-) - in case "you are a company" and look for a solution: contact me or add contact information to your profile. – IPP Nerd May 22 '16 at 16:16

1 Answers1

0

As starting point you should

Update 2023

With ipp-client you can submit PDFs to IPP network printers from Android:

IppPrinter("ipp://colorjet.local")
   .printJob(File("my.pdf"), documentFormat("application/pdf"))
   .waitForTermination()

If the printer does not support PDF you need to transform the document into a format supported by the printer.

IPP Nerd
  • 992
  • 9
  • 25
  • hi. as a matter of fact, i did. however, every http/ipp request i've made either returns either one of these errors: 1) bad request 2)broken pipe. – Sebrinar Yaslana May 31 '16 at 04:18
  • the ipp communication is not working correct. either the ipp-server doesn't conform to the spec, or your ipp-client is doing something wrong (more likely). "bad request" means the ipp-server can't interpret the ipp-request you've encoded. you could also use a thirdparty library e.g. from ipp-software.com. – IPP Nerd Jun 01 '16 at 22:28
  • 1
    Something I haven't seen mentioned is byte order. If you're on a PC, you need to do the C# equivalent of htons/ntohs. – Jamie Jul 06 '23 at 20:10