OS X plugins
June 25, 2007 10:54 AM   RSS feed for this thread Subscribe

Novice programmer; OS X plugin question...

I'm using this cool OS X app. The developer allows (Cocoa) plugins to be used by the app, and provides a well-documented example with the SDK. I've contacted the developer and pitched some feature enhancement ideas, he has replied that he will consider them when he has time, perhaps in a future release of the cool app.

I have this burning need for these features. I have them working in a separate, crappy app. I'd really like to have them in the cool app, and I wonder if I can do that by wrapping them into a plugin.

My question is: If an OS X app accepts plugins, how accessible are the main app's methods and protocols from the plugin? To be more specific, if the id's of the main app's methods are not known to the plugin writer?

Am I just in over my head? Is this borderline hacking?

Disclaimer:
I bought two licenses of said cool app - I'm not trying to crack anything, I just really *really* want my features implemented.
posted by shino-boy to computers & internet (4 comments total) 2 users marked this as a favorite
If the program accepts plug-ins, then I think that it's MEANT to have 3rd party additions.

Each API/SDK is different as to how much is available, but a clear, well-written set of documentation is better than a wide-open API, imho.

If you need it and can't do it, consider offering a small bounty for another programmer to write it. Bounties are very common (at least in the FOSS world).
posted by unixrat at 11:20 AM on June 25, 2007


It sounds like you're talking about a Cocoa app, yes? In that case, your code is running in the same address space as the rest of the app, and you can effectively call any methods and use any objects you like, if you can find them and you know what to call.

The original developer would certainly prefer that you stick to what he defines as the plugin interface, of course -- that's going to be the most reliable way to do things -- but there's nothing technically stopping you from doing anything you want. The consequences are your responsibility, but if you're only using it yourself and not distributing it, that's easier to deal with.

You may find class-dump handy for determining what classes and methods are in the app that you don't already know about.
posted by xil at 11:39 AM on June 25, 2007


Ugh, you explicitly said it was a Cocoa app, never mind.

Are you in over your head? Maybe. It may be easy to do what you want, may be difficult, it all depends.

Is it "borderline hacking"? The cops aren't going to knock down your door, if that's what you mean. It will definitely take some reverse-engineering if you don't have the source code to the app, and it isn't the "right" way to do things, but sometimes you gotta do what you gotta do. Just be prepared for everything to break the next time the app gets updated.
posted by xil at 11:44 AM on June 25, 2007


Thank you xil, I'll give class-dump a try.
posted by shino-boy at 2:39 PM on June 25, 2007


« Older Possibly disgusting medical qu...   |   Should I switch to green power... Newer »

You are not logged in, either login or create an account to post comments



Related Questions
No, click on *this* link... February 10, 2008
good image gallery plugin for wordpress? October 24, 2007
Making space on a Mac drive October 20, 2007
help me "subscribe" to websites that do not use... April 20, 2007
Favourite Wordpress plugins? March 6, 2006