Когда проект разрабатывается на компьютере, проблем с просмотром журнала не возникает. Но когда начинаешь разработку на планшете, все становится гораздо печальнее.
Разработчики движка добавили в профайлер много разных полезных вещей, но к сожалению забыли про простую консоль, чтобы перейдя на ее вкладку разработчик мог просматривать сообщения из своей игры и отправлять некоторые консольные команды прямо с компьютера на планшет. Сейчас мы исправим это упущение.
Короче говоря, мы создадим таблицу в Google Docs и скрипт, который будет добавлять туда значение при вызове.
И мы создадим в движке скрипт, который будет слушать такие команды, как Debug.Log(), и отправлять их в наш скрипт. Это займет всего 10 минут, но удобство значительно возрастает. Если у вас в проекте реализована консоль, то вы можете заставить скрипт отправлять ответ (скажем, содержимое того, что вы написали в какой-то ячейке таблицы), вы можете отправить это как команду в консоль.
Все работает довольно быстро, интернет у меня 50 мбит, сообщения появляются практически мгновенно.
Таблица Google обновляется сама, обновлять ее не нужно.
Сначала самый простой вариант, чтобы понять суть.
1. Настройка серверной части.
Для серверной части вам понадобится учетная запись Google, потому что таблицу мы будем создавать на Google Диске.
Создайте электронную таблицу.
Создайте скрипт в меню (Инструменты -> Редактор скриптов -> Скрипт как веб-приложение).
Удалите созданный шаблон и скопируйте следующий код:
!!! В коде идентификатор 0Ap2rwVyty8rZdElOTFhlTG9BSEZGY29BZDlpQWdMR2c необходимо заменить на идентификатор вашей страницы, его можно взять из URL созданной вами таблицы.function doGet(e) { var sheet = SpreadsheetApp.openById("0Ap2rwVyty8rZdElOTFhlTG9BSEZGY29BZDlpQWdMR2c"); var n = sheet.getLastRow() + 1; sheet.getRange("A"+n).
setValue( new Date() ); sheet.getRange("B"+n).
setValue(e.parameter.p); return ContentService.createTextOutput("OK"); }
Когда вы вызываете этот скрипт, он возьмет созданную вами таблицу и добавит в последнюю строку время и значение, полученные из запроса GET с ключом p. Сохраните скрипт под именем, например RemoteLogger. Теперь вам нужно создать версию (Файл -> Управление версиями -> Сохранить новую версию).
Теперь мы можем опубликовать его (Опубликовать -> Развернуть как веб-приложение) со следующими настройками: !!! Запустите приложение как: я !!! Кто имеет доступ к приложению: любой, даже анонимный.
После нажатия кнопки «Развернуть» Google предоставляет нам такой URL-адрес: script.google.com/macros/s/AKfycbyubkC0TQbyrRYvVD9nYezvxuDkya0Asbvff67EUK0G0oqFndws/exec когда вы его запустите, в созданной вами таблице появится строка со временем запуска и неопределенным значением, если вы добавите Эp=test в конце script.google.com/macros/s/AKfycbyubkC0TQbyrRYvVD9nYezvxuDkya0Asbvff67EUK0G0oqFndws/execЭp=test тогда в таблице появится строка со словом «тест» Можно считать, что серверная часть работает нормально.
2. Клиентский скрипт Unity.
Создайте скрипт, например RemoteLogger.cs и поместите туда следующий код: using UnityEngine;
using System.Collections;
using System.IO;
public class RemoteLogger : MonoBehaviour {
Теги: #unity3d #debug #Android #iOS #Разработка игр #unity
-
Как Отлаживать Переменные Среды В Linux
19 Oct, 24