Updated 4-9-2013 This is a total repost of my earlier question. As I have learned much more about Launch Services, UTIs and the depreciated creator codes, I feel I can better ask the question from scratch.
Problem Description:
We have an application that was designed for Legacy Mac 9.xx which still runs on Snow Leopard(with Rosetta). The application uses bundled files We developed our new app for Snow Leopard and beyond. The issue is that Launch Services does not properly associate the new app based on the plist configuration we are currently using and I need to know what I am doing wrong.
If I right click on the bundled document and select GetInfo, I can associate the bundled file to either the legacy app or the new app and it will work as I expect it to. I believe that is because snow Leopard still used the Creator Code technology for this type of association. If I tell the file to associate itself with the old legacy app and I press "Change All" , Launch Services will correctly associate all files of that type and it will work as expected. If I tell the file to associate itself to the new App and I select "Change All", The app will open but the files will not. From what I can tell, Launch services is assigning a dynamic UTI to the app and it when the file is clicked on, The OS doesn't know what app to use.
I found a couple of posts out there that seem to suggest Apple might have made some design mistakes in the new UTI methodology. One post here shows how to add an array of string file extensions to the ExportedUTIs dictionary of the new apps pList. This gets the app to function correctly, but that is not going to solve the problem; If we allow our users to name their files anything, we cant predict in an array what their file extension is going to be. We need Launch Services to operate correctly strictly with the UTI code, or some how get the OSType code to work.
Once the new app decides it can't open it's related file, I have to open the LanchServices.plist, delete the entry and restart the lsregister database. Then I can once again open a file with the new app(by associating it without pressing "Change All").
I am attaching some images to the app plists , the bundled document plist and the Launch Services entry:
Any help and our guidance is much appreciated.
Mike
Updated : 4/16/2013
The link to the post about UTI's I provided also includes a link to an open source software app called RCDefault app. This app will associate your APP to the given file based on your choice of UTI's , file extensions, OSType codes, and file types. Strangely, this app is able to associate the file to the app based on the UTI's structure that is provided in our plists.
Is it possible this is all just a bug in Launch Services for Snow Leopard for this specific scenario and Apple has chosen to just ignore it at this point(considering they no longer support Snow)?