У меня есть собственный плагин Unity со следующей структурой:
Plugins/Android/Foo.jar
// Нативная библиотека AndroidPlugins/Android/Foo.Android.dll
// Управляемая оболочка Unity, позволяющая получить доступ к собственной подпрограмме Android (отмечена только для Android)Plugins/iOS/libFoo.a
// Нативная библиотека iOSPlugins/iOS/Foo.iOS.dll
// Управляемая оболочка Unity, позволяющая получить доступ к собственной процедуре iOS (отмечена только для iOS)
Когда я выбираю платформу Android или iOS и открываю свой проект Unity в MonoDevelop, он не добавляет ссылку на Foo.Android.dll. Такая же ситуация с iOS. Также Unity Editor Console
содержит ошибку о нессылочных классах, используемых в моем коде Unity вне плагина.
Assets/MainScript.cs(3,11): error CS0234: The type or namespace name
Bar' не существует в пространстве имен Foo'. Are you missing an assembly reference?
Если изменить настройку платформы Foo.iOS.dll
/Foo.Android.dll
на Any Platform
перед открытием MonoDevelop под iOS/Android соответственно, все будет работать как положено.
Когда я создаю проект, он успешно создается как для iOS, так и для Android.
Где мне нужно разместить мои управляемые библиотеки или какие настройки я должен использовать, чтобы заставить Unity добавить соответствующие библиотеки в качестве ссылки при открытии проекта MonoDevelop?
Редактор Unity 5.2.0f3, OS X Yosemite 10.10.5 (14F27)