What could automatically toggle a checkbox in the PluginInspector ?


TL;DR something is toggling a new platform’s checkbox for a .dll in the plugin inspector behind my back.

I am working on a cross-platform project, adding a new platform (I had to run an additional setup program for Unity to handle this new platform). I want to exclude a .dll library for this platform, because it is useless and also generates build errors on this new platform.

I clicked on the .dll file and accessed the Plugin Inspector where “Any Plarform” is checked. Under “Exclude Platforms”, I have toggled ON my new platform’s checkbox, clicked on “Apply” and saved.

That should have done the job… Alas, when I try to build the project, it looks like at some step the checkbox is toggled OFF, and I end up with the same build errors. This checkbox “reset” seems to also happen if I close Unity and open it again.

What could be switching this checkbox’s value against my will ? I have looked for OnPostprocessBuild and OnPreprocessBuild inside the Visual Studio’s C# project, thinking maybe a script was forcing some values including resetting the ones for my new platform ; but none of the function I found seemed to manipulate this…

What could be the origin of my problem ?

I should check if multiple DLLs share a similar name (not sure if case-sensitivity can play a role in this).

In such case, depending on the way things are configured, it seems several versions of Unity (at least up to 2018.1) may end up mixing up the configurations of these DLLs in the plugin inspector, and erase the modifications.

See issue ID 873575 in Unity3d’s issue tracker.