У меня есть проект единства WebGL, который пытается выполнить javascript-код в браузере и вернуть значение.Вызов функции javascript string в браузере из Unity возвращает null
У меня есть следующий .jslib
файл в моей папке Assets/Plugins/WebGL:
var BrowserPlugin = {
GetEndpointURL: function()
{
var endpoint = window.itd.getEndpointUrl();
console.log("endpoint: " + endpoint);
return endpoint;
}
};
mergeInto(LibraryManager.library, BrowserPlugin);
В моей C# код в единстве, я импортировать библиотеки DLL и вызвать мой яваскрипта метод следующим образом:
[DllImport("__Internal")]
private static extern string GetEndpointURL();
string endpointURL = GetEndpointURL();
Проблема в том, что в моем коде C# переменная endpointUrl
всегда равна нулю. Однако в моей консоли браузера я могу ясно видеть, что правильное значение регистрируется в JavaScript-браузере, прежде чем я его верну. Что заставляет это значение возвращаться к единству как null?