Code-sign & Services HotKey Modifications

  • Greetings,

    I am new to cocoa, the list and I apologize if I am posting something
    previously beaten or that is not appropriate (please let me know!).

    I have a pure cocoa application that relies on Services as its primary
    method of invocation. Of course it can be opened normally, but that
    decreases its usability by design.
    I had already started down the path to allowing the user to change the
    Services hotkey since I can't predict which applications they will be
    using and what key-combinations will be taken. They need a way to
    customize the key-combination to their environment once they start using
    it.
    Since Apple wants all of us to sign our code moving forward in Leopard it
    is not clear to me how I can have both signed code and let the user change
    the hotkey combination after the application is signed and shipped since
    the hotkey is stored in Info.plist (or did that change and I haven't seen
    that documentation?). I will have to sign the code if I want to access the
    keychain. I would want access to the Keychain since I want to change the
    Info.plist and it is planned to live in /Applications.

    Can any one point me in the right direction for this?

    X
    --
  • On Nov 18, 2008, at 7:44 AM, Xavier Snark wrote:

    > I have a pure cocoa application that relies on Services as its
    > primary method of invocation. Of course it can be opened normally,
    > but that decreases its usability by design.
    > I had already started down the path to allowing the user to change
    > the Services hotkey since I can't predict which applications they
    > will be using and what key-combinations will be taken. They need a
    > way to customize the key-combination to their environment once they
    > start using it.
    > Since Apple wants all of us to sign our code moving forward in
    > Leopard it is not clear to me how I can have both signed code and
    > let the user change the hotkey combination after the application is
    > signed and shipped since the hotkey is stored in Info.plist (or did
    > that change and I haven't seen that documentation?). I will have to
    > sign the code if I want to access the keychain. I would want access
    > to the Keychain since I want to change the Info.plist and it is
    > planned to live in /Applications.

    I would think you'd want to store the user's preference using
    NSUserDefaults, not rewriting your bundle at run-time.
  • On Tue, Nov 18, 2008 at 9:44 AM, Xavier Snark <xssnark...> wrote:
    > Can any one point me in the right direction for this?

      You should *not* be storing user-modifiable data inside the
    app/plug-in bundle. Non-administrative users do not have permission to
    change this. You should make use of the user defaults system (see
    NSUserDefaults), which keeps the preferences in the right place -
    ~/Library/Preferences or /Library/Preferences, depending on the
    desired scope of the settings.

    --
    I.S.