Ad

AirPrint Activator and Lion… an Update

As some might have read, I discovered that Apple has significantly changed how Lion support AirPrint advertisement of printers.

If you have been using AirPrint Activator you know that with the introduction of OSX 10.6.5 and iTunes 10.1 it was possible to enable a hidden feature that would advertised Mac attached printers as being AirPrint printers.

This no longer work in OSX Lion.  As a lot of you have generously donated for AirPrint Activator I just can’t sit idle and let AirPrint support slip with the introduction of Lion.

I therefore decided to completely rewrite how AirPrint Activator work.  It willno longer leverage OSX hidden feature as it will implement AirPrint advertisement of shared printers on it’s own.

At the moment my goal is to keep the application simple… essentially a single switch to turn AirPrint on or off… much like AirPrint Activator.  Eventually I might start to introduce more advanced features.

Benefits of this new implementation will be:

  • No need for “Administrator” password to activate
  • Should work on OSX 10.5+ for both PPC and intel
  • Will allow for AirPrint sharing of non local printers (like AirPort based printers)
  • No need to remove and add printers for AirPrint to work

Downside will be:

  • User running AirPrint Activator will need to be logged on

As of last night I have successfully implemented the sharing of Printers on the network.  I now need to clean-up the code, build a “System Preference” interface and figure out how to start/stop a user level daemon to “advertise” AirPrint printers.

  • Scott B

    Thanks for all the great work, Its Appreciated !!!

    • Anonymous

      No problem! I like learning about xcode while wrestling AirPrint on OSX.

  • Psager

    Will APA work with Snow Leopard or Lion Servers? I have had no luck so far.

    Thanks.

    • Anonymous

      There is a reported issue with it. i will investigate over the week-end.

  • Reddol

    Tried installing 2.07 on my ppc mac mini and it says its not for that archtecture, when will the above version be ready?

    • Anonymous

      I have compiled one… Will post later

      • phLi

        I can’t seem to find ppc binary(ies) anywhere? I have downloaded b12 but it’s Intel-only… Please advise.
        Thanks for all your hard work.

        • Anonymous

          I have stopped supporting the PPC platform as Apple has dropped PPC support in xCode 4. This is sad but Apple is really pushing development away from the PPC platform…

  • http://twitter.com/reelrootsryan reelrootsryan

    Just DL’d and installed and turned on and immediately I was able to print from my iPhone to a shared printer (in 10.7) — Thanks!

  • Dedekohar_2005

    print tiket

  • MacNewbie

    Hi,

    I forgot to deactivate APA before I updated for v2.
    V2 reported that I need to deactivate first with v1, and then activate the service in v2.
    I tried to go back to v1, but I can not deactivate it.
    The pop-up window says that it was successfully deactivated but it is not true.
    If I quit the program and restart it it still shows that is is active.
    Is there a way to manually deactivate it – I tried 1.1.1, 1.1.2, and 1.1.3 – no luck. 
    Or any other solution would be appreciated.

  • Ken Stewart

    Hi Bernard,

    I’m running 2b16 under 10.7.1 and it seems to “forget” its printers over time.  I have one local printer attached to the system, which is shared.  I do have the firewall turned on, but the printer is local, so I don’t think this should matter.  When I start up APA and go to System Preferences -> Printers and unshare/share the printer, it pops up in APA.  I can then print to it from my iPad.  At some point after that, though, APA can no longer see the printer, and I have to go back to Sys Prefs and unshare/reshare again.

    I am not logging out the user running APA, but I do have fast user switching turned on and other users do log on to the same computer.  I have not tried specifically switching users to see if this is causing the problem though.

    Great work, many thanks and – any thoughts?

    Ken

  • mqm

    Hi, First of all: thanks!!! 1.x was working great on Snow Leopard and also on the original Lion. But after the new MacOS upgrade with the announcement of the iPhone 4S, the 1.x version stopped working. I tried this newer 2.x version but it also fails. I have MacOS 10.7.2. I suspect that this latest Lion upgrade hosed your app? Any idea when it will work again? Thanks!

    • Anonymous

      Can you provide more details about what does not work? Do you see the printers on the iDevice?

  • Frank Scroggs

    I too have the duplicated printer names from ios.  I can only use the 2nd one, though on the ios the 2 entries look identical. 

    • http://www.facebook.com/profile.php?id=1556975700 Bob Fish

      Just turn AirPrint activator to off, check the option to only share local printers and turn it back on – poof.

  • Doug

    I have used APA in the past and it worked perfectly.  I even used it on Lion.  For reasons too painful to explain, I needed to reinstall “from scratch” all software on my MacBook Pro.  APA no longer works.  I have followed all of the guidance in the threads.  No firewall enabled.  uninstalled and reinstalled drivers.  sharing is enabled.  APA is on and status is “sharing” but no printers are listed as available for AirPrinting.  Help.  This is the greatest app.  Wish I could get it working again.

    • Doug

      BTW – I am using APA v2.1b2

      • Anonymous

        Since this is a new install there is no reason for it not to work… If printers are not showing then this probably mean that Printer Sharing (the service) is not on. Make sure that Print Sharing is on under the sharing Preferences of OSX. Sometime Sharing of printer is ON but the actual service is OFF… happened to me before.
        If that still does not work then download the debug version from: http://netputing.com/forum/showthread.php?tid=3 and post back the Console output when you try to turn APA ON…

        • Doug

          THank you for the quick response.  I installed the debug version you instructed.  This is the console output.

          10/23/11 9:04:03.302 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 143] launchAgent src file is at /Users/Doug/Library/LaunchAgents/com.netputing.airprintactivator.plist10/23/11 9:04:03.303 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 155] AirPrintDaemon cli is in /Users/Doug/Downloads/AirPrintActivator/AirPrintActivator.app/Contents/Resources/AirPrintDaemon.app/Contents/MacOS/AirPrintDaemon10/23/11 9:04:03.303 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 163] com.netputing.airprintactivator.plist will be copied from /Users/Doug/Downloads/AirPrintActivator/AirPrintActivator.app/Contents/Resources/com.netputing.airprintactivator.plist10/23/11 9:04:03.304 PM AirPrintActivator: -[AirPrintActivatorAppDelegate saveDefaults] [Line 385] Saving defaults to /Users/Doug/Library/Application Support/AirPrintActivator/defaults.xml10/23/11 9:04:03.357 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 196] Adding ~/Library/LaunchAgents/com.netputing.airprintactivator.plist to launctl…10/23/11 9:04:03.369 PM [0x0-0x53053].com.netputing.AirPrintActivator: nothing found to load10/23/11 9:04:03.370 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 200] Checking if that was successfull…10/23/11 9:04:03.389 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 207] Nope, something is wrong.

          • Doug

            This is the console log when I set APA to “off”

            10/23/11 9:09:50.030 PM com.apple.usbmuxd: _SendDetachNotification (thread 0x7fff73d9d960): sending detach for device d0:23:db:6d:64:f9@fe80::d223:dbff:fe6d:64f9._apple-mobdev._tcp.local.: _BrowseReplyReceivedCallback got bonjour removal.10/23/11 9:09:50.342 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 143] launchAgent src file is at /Users/Doug/Library/LaunchAgents/com.netputing.airprintactivator.plist10/23/11 9:09:50.343 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 155] AirPrintDaemon cli is in /Users/Doug/Downloads/AirPrintActivator/AirPrintActivator.app/Contents/Resources/AirPrintDaemon.app/Contents/MacOS/AirPrintDaemon10/23/11 9:09:50.343 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 163] com.netputing.airprintactivator.plist will be copied from /Users/Doug/Downloads/AirPrintActivator/AirPrintActivator.app/Contents/Resources/com.netputing.airprintactivator.plist10/23/11 9:09:50.343 PM AirPrintActivator: -[MyHelpers terminateAPAProxy] [Line 109] Terminating all appredir processes…10/23/11 9:09:50.369 PM AirPrintActivator: -[MyHelpers terminateAPAProxy] [Line 126] Nothing to terminate!10/23/11 9:09:50.380 PM [0x0-0x53053].com.netputing.AirPrintActivator: launchctl: Error unloading: com.netputing.airprintactivator10/23/11 9:09:52.000 PM kernel: Limiting closed port RST response from 253 to 250 packets per second10/23/11 9:09:55.000 PM kernel: Limiting closed port RST response from 252 to 250 packets per second

        • Doug

          This is the console output wen I set APA to “off”

          10/23/11 9:09:50.030 PM com.apple.usbmuxd: _SendDetachNotification (thread 0x7fff73d9d960): sending detach for device d0:23:db:6d:64:f9@fe80::d223:dbff:fe6d:64f9._apple-mobdev._tcp.local.: _BrowseReplyReceivedCallback got bonjour removal.10/23/11 9:09:50.342 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 143] launchAgent src file is at /Users/Doug/Library/LaunchAgents/com.netputing.airprintactivator.plist10/23/11 9:09:50.343 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 155] AirPrintDaemon cli is in /Users/Doug/Downloads/AirPrintActivator/AirPrintActivator.app/Contents/Resources/AirPrintDaemon.app/Contents/MacOS/AirPrintDaemon10/23/11 9:09:50.343 PM AirPrintActivator: -[AirPrintActivatorAppDelegate switchAction:] [Line 163] com.netputing.airprintactivator.plist will be copied from /Users/Doug/Downloads/AirPrintActivator/AirPrintActivator.app/Contents/Resources/com.netputing.airprintactivator.plist10/23/11 9:09:50.343 PM AirPrintActivator: -[MyHelpers terminateAPAProxy] [Line 109] Terminating all appredir processes…10/23/11 9:09:50.369 PM AirPrintActivator: -[MyHelpers terminateAPAProxy] [Line 126] Nothing to terminate!10/23/11 9:09:50.380 PM [0x0-0x53053].com.netputing.AirPrintActivator: launchctl: Error unloading: com.netputing.airprintactivator10/23/11 9:09:52.000 PM kernel: Limiting closed port RST response from 253 to 250 packets per second10/23/11 9:09:55.000 PM kernel: Limiting closed port RST response from 252 to 250 packets per second

          • Anonymous

            Humm… hard to tell from the output in discuss. Can you try to post the output in the Forum instead… Now, there is one thing I noticed that make me think there is an issue with launchd and AirPrintDaemon properly loading:
            launchctl: Error unloading: com.netputing.airprintactivator

            When you tried to turn it off the debug output show an error removing the launchd entry… I will need the full logs of what happen when you flick the switch to ON.

  • Glenn

    Just updated iPad2 to OS5. iPad sees shared airprint printers on MacBook Air Lion, but returns error of “printer off line.” Any suggestions.

  • Paul

    Like Glenn, my “printer off line” message comes now that I am running iOS 5 on my iPhone 4 and my iPad 2.  Same with my wife’s iPhone 4.  It worked in with Lion initially and without issue, but after upgrading to iOS 5 is when it stopped working.

  • Mdbyers

    I can’t disable the old airprint hactivator to be able to install the new version. I try to turn off, it prompts for admin, then nothing happens. Here is my error:
    12/28/11 9:22:46.554 AM AirPrintHacktivator: *** -[AirPrintHacktivatorAppDelegate awakeFromNib]: unrecognized function setHidden_. (error -10000)
    12/28/11 9:23:11.856 AM AirPrintHacktivator: *** -[AirPrintHacktivatorAppDelegate actionnate:]: The variable theIndividualUser is not defined. (error -2753)

    Is there a way to manually disable from command line?  I can’t get a log-in to the forum so posting here.

    • Mdbyers

      Note: I upgraded to Lion from Snow Leopard

  • Planetmarsalarm

    Can you implement 10.6 server support?  Pretty please…

  • Irider10

    well apple just did an update for lion which for some reason has caused AirPrint to give the message printer offline again when printing from iPad2 sucks soooooo much I really liked being able to print from iPad :(

    Ian