ошибка CS0029: не удается неявно преобразовать тип void в строку - PullRequest
0 голосов
/ 21 июня 2020

Итак, я пытаюсь создать плагин android для Unity, и у меня есть простой метод, который показывает всплывающее сообщение: В Unity:

    public static void ShowToastMessage(string message)
    {
        if(Application.platform == RuntimePlatform.Android)
        {
            string[] args = { message };
            string result = WDAndroid.Call<string>("showMessage", args);
            if (result != "success")
                print("Toast message error: " + result);
        }
        else
        {
            print("Toast message: " + message + " (Toast not supported on this platform)");
        }
    }

В android studio:

    public String showMessage(String message){
        String toReturn = "success";
        try {
            Toast.makeText(this.context, message, Toast.LENGTH_SHORT);
        } catch (Exception e){
            toReturn = e.getMessage();
        }
        return toReturn;
    }

И я получаю следующую ошибку: error CS0029: Cannot implicitly convert type 'void' to 'string'

Я почти уверен, что мой android jar настроен правильно, и никаких ошибок не будет, если я не прошу вернуть стоимость. Я думаю, что проблема как-то связана с классом Unity AndroidJavaObject. Документация по нему, на мой взгляд, довольно скудная, но я видел, как кто-то делал что-то похожее на то, что я сделал на https://docs.unity3d.com/Manual/AndroidJARPlugins.html (как показано на этом изображении: https://i.stack.imgur.com/3J8ll.png)

Есть ли у кого-нибудь опыт выполнения того, что я пытаюсь сделать, кто может мне помочь? Спасибо!

1 Ответ

0 голосов
/ 21 июня 2020

Я разобрался. Буквально ушел на час, вернулся и ошибка исчезла вздох

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