Get a list of build setting strings?

I am looking for a way to get a list of Build Settings from the dialog so that I may use: EditorUserBuildSettings.GetPlatformSettings(string, string);

The settings are listed per platform or at least for ‘Lumin’.

To set “Lumin SDK Location” this works → EditorUserBuildSettings.SetPlatformSettings(“Lumin”, “sdkPath”); but that was just luck. Figuring out other settings seems to be opaque. As shown above, the displayed text has no correlation to the required string. So how do we find the string to set for something arbitrary like “Sign Package?”

Thanks,
Tharyn

I ran into the same problem but after a bit of digging I found the answer:

For this particular build setting the correct function call is:

EditorUserBuildSettings.SetPlatformSettings( “Lumin”, “SDKPath”, string );

But it is important to not that these identifying strings are case dependent, “sdkPath” for example did not work for me.

Other properties seem to be:

  • LaunchWithDebugger

  • MagicLeapDebugPort

  • ProfilingOtimizations

  • SignMabuPackage

  • Standalone

  • CopyPDBFiles

I found these by looking in the file /Library/EditorUserBuildSettings.asset. Of course this file being in the Library folder means that it can’t easily be stored under source control so you will need to set this property each and every time.

Some of them can be sort of reverse-engineered by opening the /Library/EditorUserBuildSettings.asset with a text editor. You will actually see some human readable names there. For example Standalone’s Architecture is:

EditorUserBuildSettings.SetPlatformSettings(“Standalone”, “m_ArchitectureFlags”, “x86”);

It’s an effort and guess work (especially with Visual Studio version for WSA) and I couldn’t find all properties, but most can be revealed. I think later Unity versions expose more explicit and strongly typed properties and also extracts these settings away from the Library. It’s a show really, if you want to have deterministic builds…