ExpressionEvaluator.Evaluate когда единая сборка apk - PullRequest
0 голосов
/ 24 ноября 2018

я использую сценарий в моем проекте и в этом сценарии для решения простого математического уравнения, то же самое «1 + 2-2 + 1» из строкового ввода, которое я использую ExpressionEvaluator.Evaluate , но это в классе unityeditorи когда я строю свой проект, я сталкиваюсь с ошибкой, которая говорит
"Имя" ExpressionEvaluator "не существует в текущем контексте".Я обрабатываю эту ошибку с помощью зависимой от платформы компиляции https://docs.unity3d.com/Manual/PlatformDependentCompilation.html, но когда я пытаюсь установить apk, я получаю сообщение об ошибке на Android-устройстве и устройстве, которое говорит, что приложение не установлено.

Теперь мой вопрос таков:есть ли альтернатива для ExpressionEvaluator.Evaluate или любое предложение, с которым вы можете мне помочь.

большое вам спасибо.

1 Ответ

0 голосов
/ 24 ноября 2018

Я сомневаюсь, что сбой установки имеет какое-либо отношение к условной компиляции.Я не могу много говорить об этом, но что касается ExpressionEvaluator, в UnityEngine много большого количества кода.Если бы вы объединили весь этот код с вашей игрой, вы бы получили апк в несколько сотен мегабайт;не говоря уже о том, что большая часть кода, вероятно, является нативной, и они не могут / не могут собрать ее для всех целевых платформ, только для платформ редакторов (Windows, MacOS).

Вы действительно не должны использовать UnityEditor Код в вашей игровой логике, даже в редакторе.Если вы используете UnityEditor, это должно быть только в коде редактора.Если что-то есть в UnityEditor и вам нужно поддерживать это во время выполнения, вы должны найти библиотеку, которая делает то же самое, или написать это самостоятельно.Вы можете искать один онлайн или на SO.Вот первый результат поиска Google:

Мне нужен быстрый анализатор выражений во время выполнения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...