Суббота, 09 Ноября 2024, 05:05

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Работа билда отличается от редактора
killing002Дата: Четверг, 21 Мая 2020, 18:10 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Приветствую.
Возникла проблема -> билд под андроид не соответствует, тому что происходит в редакторе. Через unityRemote все нормально, editor тоже все нормально, но с билдом происходит что то непонятное. Может кто знает, из за чего это может происходить. А пока опишу , что именно не так. Есть некий код, который берет информацию из txt файла, который подгружается на сцену через resources.load(),и обрабатывает ее. Заполняя ячейки на сцене информацией из этого файла. Файл с txt находится в папке Resousrces. В editor заполняются все ячейки и все ок. Но в билде он заполняет первые несколько ячеек и все. Настройки билда -> дефолтные , не development build. Библиотеку unityEditor не использовал.


123
drcrackДата: Четверг, 21 Мая 2020, 18:39 | Сообщение # 2
старожил
Сейчас нет на сайте
Если ты парсишь float числа из файла может быть проблема с разными локалями и соответственно форматом чисел (точка/запятая)
Других идей нет)
Отладчик в руки и вперед. Ну или логгирование каждого шага


Сообщение отредактировал drcrack - Четверг, 21 Мая 2020, 18:39
killing002Дата: Пятница, 22 Мая 2020, 13:32 | Сообщение # 3
почетный гость
Сейчас нет на сайте
Только проверил, билд не до конца считывает файл. Из 42 записей, он читает только 12. В editor , повторюсь, такого не происходит. У меня парсятся только Int числа.. Так что думаю дело не в этом.. Продолжу тестирование..

123
masb8ly-GCДата: Пятница, 22 Мая 2020, 13:41 | Сообщение # 4
постоянный участник
Сейчас нет на сайте
Цитата killing002 ()
Из 42 записей, он читает только 12

Как парсишь записи по строкам?
Возможно, что разные окончания строк у первых 12, оставшихся 30.
Первое, что приходит на ум при таком поведении, если нигде эксепшены не летят.


Backend Developer ESIS
Client Side Developer Room8Studio
Technical Leader Lucid Reality Labs
Chief Technology Officer The Intruders
Chief Technology Officer RoyalePlay Games
manonedgeДата: Пятница, 22 Мая 2020, 14:04 | Сообщение # 5
почетный гость
Сейчас нет на сайте
Если в логах пусто, оберни чтение файла в try catch
killing002Дата: Пятница, 22 Мая 2020, 14:04 | Сообщение # 6
почетный гость
Сейчас нет на сайте
Цитата masb8ly-GC ()
Как парсишь записи по строкам?

Из строки беру числа и перевожу в числа посредством parse().
Цитата masb8ly-GC ()
Возможно, что разные окончания строк у первых 12, оставшихся 30.

Я тоже сначала об этом подумал, и сразу проверил эти строки до парсинга. Эти строки несут в себе чистые инт числа, без каких либо других символов

Добавлено (22 Мая 2020, 14:59)
---------------------------------------------
Проверил логи, и вот..

В билде он обнаружил несколько error'ов.
Суть некоторых из них понятна, а некторых - нет.
Как можно узнать больше информации. Например первая ошибка, как понять о каком именно массиве он говорит..


123

Сообщение отредактировал killing002 - Пятница, 22 Мая 2020, 15:18
drcrackДата: Пятница, 22 Мая 2020, 18:46 | Сообщение # 7
старожил
Сейчас нет на сайте
Цитата
Суть некоторых из них понятна, а некторых - нет.
Как можно узнать больше информации. Например первая ошибка, как понять о каком именно массиве он говорит..

Я тут вижу всего одно исключение и оно предельно понятно — в String.Remove у тебя index+count больше чем длина строки
killing002Дата: Пятница, 22 Мая 2020, 19:54 | Сообщение # 8
почетный гость
Сейчас нет на сайте
Спустя пару миллионов тестов проблема все таки была решена. Всем спасибо кто участвовал в этом. А именно этому парню, мб и не парню - manonedge. Посоветовал он конечно непонято что(на первый взгляд), но это сработало. Корень проблемы я так и не понял, в билде постоянно выдавались "эксепшины" по поводу того, что я практически во всех имеющихся массивах выходил за их объем.. Но ведь это бред, ибо editor бы мне об этом сразу сказал. В общем, на другом ресурсе мне посоветовали сделать development build и вновь заглянуть в логи. Как оказалось, что в этих логах информация дополнилась, а именно - у каждого "эксепшина" теперь был адрес строки который его вызывает. И спустя несколько десятков тестов , я смог запихнуть все эти строки в блок try catch. В итоге все получилось, логи чисты , приложение работает так как надо.

123

Сообщение отредактировал killing002 - Пятница, 22 Мая 2020, 19:58
drcrackДата: Суббота, 23 Мая 2020, 07:42 | Сообщение # 9
старожил
Сейчас нет на сайте
Цитата
Но ведь это бред, ибо editor бы мне об этом сразу сказал.

Он возможно и говорит, но в редакторе может быть выключен Error Pause в Console и ты их просто пропускаешь
killing002Дата: Суббота, 23 Мая 2020, 09:54 | Сообщение # 10
почетный гость
Сейчас нет на сайте
Цитата drcrack ()
в редакторе может быть выключен Error Pause в Console и ты их просто пропускаешь

Проверил, там все чисто


123
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг