Update Your .App With Sparkle

Sparkle is a framework many OSX apps use in order to allow easy updating, automatically if desired. By default it effectively downloads the latest version of the .app package, checks authenticity with certificates, and finally replaces the previous .app with the newly downloaded package.

You can check out the project and download the lastest version from the projects website.

Then you’ll find the documentation to get the basic setup instructions over on github.

It does take a little more work to integrate than some other frameworks, but then this one is doing quite a bit more than just adding a library and some header files. It involves copying the framework into the app, adding a copy build phase, modifying the main window .xib, configuring the appcast (which is an RSS feed), and finally testing everything out. The documentation is good, but the lack of screenshots sort of fits. I’m sure I’ll run into issues so I’ll post them here as they occur.

Cocos2d-x uses GLFW3 for all of it’s platform window creation needs and by default creates its own menu so I had to add an extra menu item by calling into an Objective-C++ platform specific implementation.