LC's standalone Maker

William Prothero prothero at earthednet.org
Sat Dec 6 11:38:16 EST 2014


Folks:
Sorry for this long email. I hope that someone who has submitted apps to the Apple store, with success, will give me a bit of help, as I’ve searched the help files and tutorials and I haven’t found anything about the details of using non-livecode files in an application. 

The description of my problem is much longer than my questions.

I’ve been having some trouble with the way the standalone maker organizes external non-livecode data files and wonder if anybody else has had problems. I purchased App Wrapper 3 and have had some interactions with Sam, the author, and sent some wrapped and un-wrapped examples and got some feedback. The reason is because, although the applications work, his installer and zip output don’t work. 

FYI, I’m only building a MacOSX standalone and am on OSX Mavericks. Currently using LC 7.0.1 RC3

Here is Sam’s response:
----------------------
When it comes to bundles, there’s a golden rule (or many more).

Main Executable application goes in the /MacOS folder.
Additional executable code goes in /Frameworks, /Plugins, or /Helpers.
Non executable files should go in /Resources

So in theory your data files should be in the resources folder and the externals that LiveCode create should be in PlugIns (especially as they roughly conform to a bundle).

It seems like LiveCode likes to have the data files in the /MacOS folder, you might be able to fool it by using a relative symbolic link, then again you may not.

Have you spoken to any other LiveCode users on their forums or support about this?
———————

The standalone builder has a nice place to specify the location of external files. The window is labeled “non-stack files in the application”. In my development environment, the “files" folder is at the same directory level as the myApp.livecode application. Within the “files” directory are numerous sub-directories containing various binary, text and other data files. These are not livecode stacks. I just have one line in this field: “files/*”  (no quotes).

The standalone builder, after the standalone is built, creates an empty “files” directory in the Contents/MacOS folder with empty subdirectories that are the same ones in my “files” directory.  In the “Resources” directory, it puts my “files” directory, with all subdirectories and data within, into the “Resources/_MacOS/files directory. 

This structure appears to confuse App Wrapper 3, and Sam worries that Apple will not accept my application because all non-executable files must be in the Resources folder. But, the bundle created by App Wrapper 3 does work. The installer package and zip output create installed executables that cannot find my external data files. But, that’s not my main question here.

My application does work, after I made the needed code modifications to allow for the change in file structure that the standalone builder creates in the resulting bundle.

Questions about the application package built by the standalone builder:
1) Am I safe to just delete the empty folders in the “MacOS” folder to prevent Apple from thinking there is non-executable code within? 

2)Why are the empty “files” folders in the MacOS folder, in the first place?

3) Are there complexities or anything else I should know about the use of external, non-livecode data files?

Thanks for any help and information.

Bill

William A. Prothero
http://es.earthednet.org/




More information about the use-livecode mailing list