Sparkle for REALbasic

· Aug 21, 02:19 PM

Sparkle for REALbasic is a wrapper for Sparkle, a Cocoa framework that adds instant self-update functionality to your Mac OS application. My bit of code actually wraps Sparkle for Carbon, itself a wrapper for the Cocoa library.

Download

---

Comment

  1. Hi Charles,
    I am getting a FunctionNotFound error in the Initialize routine for SUSparkleInitializeForCarbon.
    10.4.10 – PowerPC G4

    Thomas Cunningham · Aug 21, 10:40 PM · #

  2. Sorry for the noise, I just read your Read Me note about the placement of the framework …

    Thomas Cunningham · Aug 21, 10:57 PM · #

  3. Hi there! Is it okay if I link to this on the main Sparkle site? Is this URL likely to change? Thanks for your good work!

    Andy Matuschak · Aug 21, 11:40 PM · #

  4. Of course you may link to it. I meant to send you an e-mail yesterday. The URL should be stable.

    And thanks for writing Sparkle in the first place.

    charles · Aug 22, 10:05 AM · #

  5. Hi Charles,
    Thanks for this. How do you set the users preference to check at startup and retrieve the users original selection?
    Thanks
    D

    Danny · Aug 24, 03:33 AM · #

  6. To set check at startup, I think that you set the SUCheckAtStartup key to true in Info.plist.

    SUCheckAtStartup

    charles · Aug 24, 11:51 AM · #

  7. Could this sort of thing be applied to the Growl framework?

    Tom · Aug 25, 07:18 AM · #

  8. I don’t know. Perhaps someone familiar with Growl could say.

    charles · Sep 1, 02:35 PM · #

  9. I am also getting a FunctionNotFound error in the Initialize routine for SUSparkleInitializeForCarbon. Couldn’t find a Read Me file…

    Josh · Sep 9, 11:25 AM · #

  10. First: thanks for this nice piece of RB-code.

    However, since I use this code, Sparkle seems to “block” my .plist file. If i change my preferences in my app it doesn’t get written any longer into the plist-file since using this wrapper. Instead, there’s an extra temp-file… Any idea’s?

    It has definitely something to do with Sparkle (for Carbon or for RealBasic) as writing the preferences to another file than the plist works fine (which is the way I work around this right now)

    Gileba · Sep 28, 10:21 AM · #

  11. Allright… this has to do with the way I was writing to the plist and nothing with your code, so problem solved for me (and no bug for you)

    Gileba · Nov 1, 06:49 PM · #

  12. I get a FunctionNotFound Exception. I have read & followed the ReadMe (in the notes section!) and I still get the error.
    I am using Realbasic 2007r5

    Jordan · Dec 1, 09:11 PM · #

  13. This probably means that Sparkle.framework is not where it is supposed to be. It should be at Contents/Frameworks/Sparkle.framework in your application bundle.

    I’m finishing up a newer version that allows you to set the location of the framework at runtime.

    charles · Dec 2, 10:57 AM · #

  14. Hi Charles,

    Sparkle for RB looks great. I’m trying to get Sparkle to work in a debug build. Where should the .plist file go for that?

    Jon · Dec 24, 09:40 AM · #

  15. I’m not sure that it can go anywhere. Rb creates a .plist file and there is no way to add to it. I’ll see if I can figure out a way. I have an update of the Sparkle code that allows you to set the location of Sparkle.framework at runtime.

    charles · Dec 24, 10:06 AM · #

  16. I’m trying to implement Sparkle in my RB app. This is harder because I can’t actually run it in the debugger. But more importantly, I have no control over the Sparkle interface and can’t get the values of user interactions (like, “don’t ask again”, so I can set my preferences accordingly). Can you point me in the right direction? Thanks.

    Jon · Dec 30, 09:36 AM · #

  17. The values of user interactions like “skip this version” are saved in your application’s .plist file. You should find settings like

    <key>SUCheckAtStartup</key> <false/> <key>SULastCheckTime</key> <date>2007-12-30T19:27:35Z</date> <key>SUSkippedVersion</key> <string>2.5</string>

    that you can then check.

    charles · Dec 30, 02:37 PM · #

  18. So far, so good. Sparkle is working nicely now (and I’ve learned more than I wanted to about parsing .plist files!). There are some little things I’d like to get right, though, that aren’t working. For example, the Sparkle dialogs have a place to show my app’s icon, but it’s blank. Is there some info.plist setting for this (I don’t anything about it on the Sparkle web site)? Or am I missing something obvious?

    Thanks.

    Jon · Jan 3, 11:12 AM · #

  19. Sparkle appears to get the icon information from the applications, and it works for me. Check the .icns file in your app; recent versions of REALbasic create a bad app.icns file.

    charles · Jan 3, 11:27 AM · #

  20. Argh, yes. The .icns file in my bundle always has an extra (and blank) icon as the first in the list. Oddly, if I open it in Iconographer it’s OK, and if I save from there and replace the RB-generated icons in the Resources folder the .icns file is correct, and Sparkle uses the right icon. I didn’t see this (or a solution) on the RB NUG. I don’t suppose you have run across one?

    Thanks again,

    Jon

    Jon · Jan 4, 04:40 PM · #

  21. Until RS chooses to fix their code, I just replace the .icns file. It sounds like you might have a better fix.

    charles · Jan 4, 04:46 PM · #

Commenting is closed for this article.