On Jun 11, 2010, at 7:56 AM, Bill Cheeseman wrote: I just noticed that an AppleScript applet saved as a bundled app doesn't have a bundle ID entry in the Info.plist file. It does still have type and creator codes. Why is that?
Ditto for a script saved as a script bundle.
An application bundle you create for your own use probably does not need a CFBundleIdentifier. If you write an AppleScripted application bundle for public distribution, it should have a CFBundleIdentifier and if it has a preference file, it should be named using the CFBundleIdentifier. Since the CFBundleIdentifier is used to identify the author of the application, it cannot be randomly generated.
For example, I distribute a commercial application which stores information in a preference file. The code contains the line:
property prefsName : "com.LutherFuller.MailWing" -- = CFBundleIdentifier
which is used to read/write the preference file. And, of course, I compile using "Script Bundle Tool" and I include this text in the project.plist file associated with the project so that CFBundleIdentifier appears in the bundle's Info.plist file every time I compile.
I am not yet an Xcode user, so I don't know if Xcode can supply a CFBundleIdentifier for an application.
The documentation for CFBundleIdentifier recommends its use, but seems to leave it up to the author to create and write it to the bundle's Info.plist file. Doing this manually is tediously impossible, which is why I wrote SBT.
|