Войти
BadaЖурнал

Опыт разработки, а вернее отладки под bada

Автор:

Сегодня пришлось вплотную подебажить приложение под бадой. По сути пишу это в перерывах между запусками, пока оно компилится/заливается. Приложение большое, использует 3Д графику, OpenGL ES 2, звук итд... отсюда большое количество потребляемой памяти. Но дело не в этом. Собственно девайс появился сегодня вечром, а до этого мы пытались отладить через Remote Test Lab. Это такая шутка, с помощью которой разработчик как бы может тестировать свое приложение на удаленном устройстве. Казалось бы все чудесно, но вот как это выглядит в действительности: установил плагин для Эклипса, залогинился на этот сервер удаленного тестирования - все ок. Зарезервировал себе девайс на пол часа... Давай же теперь тестить! Не тут то было. После передачи пакета (обычный зип) "туда" появляется надпись "Install please waiting" (хз как это правильно переводиться, но суть ясна - ожидайте) и дальше эта надпись остается вечно. Итого: из 30 зарезервированных минут - 5 на заливку пакета и остальное на ожидание. Запустить не удалось ни разу. Ладно бы запустить - даже понажимать на удаленный девайс толком нельзя. После нескольких нажатий (которые впрочем не дают результата) в консоли появляется ошибка java что-то типа "Невозможно преобразовать 0,03" в число (скорее всего проблема в запятой-разделителе). Вылечить это не удалось ни региональными настройками, ни перезагрузкой ни обновлением явы... пол дня потрачено впустую. Сейчас у меня есть девайс и скорость разработки/отладки немного возрасла. Немного, потому что скорость передачи с компьютера на девайс оставляет желать лучшего... вот так вот. Я люблю айфон и Xcode

#bada, #debug

27 октября 2010

Комментарии [23]

Страницы: 1 2 Следующая »
#1
22:34, 27 окт. 2010

Какое устройство?

Кстати, отладочную информацию с устройства чем получаете? Я использую 232Analayzer, но у него плохо читаемый вывод.

#2
23:00, 27 окт. 2010

У нас Wave S8500. Про отладочную информацию не понял... мы все выводим в лог и смотрим в "Output"

#3
23:31, 27 окт. 2010

GLoom
> 232Analayzer
А с какой целью ты его используешь? О_О

2Sergio:
Сразу о подводных камнях и прочих хинтах:
а) XE и XX прошивки могут давать сильно разный результат. У нас самсунг тестировал на XXJH3, после чего (уже после старта продаж) выяснилось, что на XEJH4 игра валит видеодрайвер (судя по логам), что приводит сначала к "зависанию", а затем к сваливанию трубки в BSOD. Некоторые чуваки на XXJID говорят, что тоже все не очень стабильно, но JID - не оф прошивка, да и SDK под bada 1.2 появился буквально на днях (вчера, если я не ошибаюсь)
б) В Run configurations есть галочки overwrite data и overwrite binary. Если данные не меняются, то смело снимай галочку  о ресурсах. Иначе поседеешь, пока билд в очередной раз зальется на устройство.
в) Не забывай, что на армах запись/чтение по невыровненным адресам - UB. Осторожнее, когда работаешь с файлами.
г) Дип кост настолько дорогой, что всякие смешные истории о его стоимости в D3D9 кажутся оскорблением)
д) После айфона думаю бессмысленно говорить, что никаких discard в шейдере...

#4
23:39, 27 окт. 2010

crsib
Круто, буду знать. Спасибо

#5
23:49, 27 окт. 2010

crsib
> А с какой целью ты его используешь? О_О
Можно подключаться к COM-порту который эмулируется драйвером железки и смотреть логи.

Ох... С прошивками подвох. Я пока не обновился матерился сильно и думал как же пользователям которые не смогут это сделать.

#6
0:08, 28 окт. 2010

GLoom
> Можно подключаться к COM-порту который эмулируется драйвером железки и смотреть
> логи.
Эээ, а консоль/оутпут в эклипсе чем не устроили?

#7
0:23, 28 окт. 2010

crsib
Я не пишу прямо под баду, через Airplay SDK.

#8
16:02, 28 окт. 2010

Зараза... теперь оно в дебаге работает, в релизе нет. Проверили С++ настройки проекта - идентичные за исключением _DEBUG и оптимизации O0 vs Os
Не выводится 3D сцена, хоть убей. 2Д работает. Сейчас запустили простенькую сценку - она есть лишь наполовину (на сцене кубик и плейн - кубика в релизе нет O_o)

#9
16:06, 28 окт. 2010

> SDK под bada 1.2 появился буквально на днях
Как обновиться? Kies виснет на попытке соединиться с устройством.

#10
16:10, 28 окт. 2010

GLoom
> Как обновиться? Kies виснет на попытке соединиться с устройством.
SDK только для партнеров, альфа версия. Обновление через киес появится не раньше официального выхода прошивки (а это видимо будет не раньше, чем появится Wave II  GT-S8530)

Sergio
> Не выводится 3D сцена, хоть убей.
Трудно помочь, не зная ничего)

#11
16:35, 28 окт. 2010

Как я понимаю - дебажить релизную сборку в принципе не возможно? И AppLog она тоже не выводит...

#12
16:42, 28 окт. 2010

Обычно хватает StackFrame.txt
Хотя такой проблемы и нет.

Какая версия SDK и прошивки?

#13
17:28, 29 окт. 2010

Наши мучения вчера закончились. При компиляции были проблемы с флоатами - методы, возвращавшие флоат обычно возвращали 0. Решилось это изменением порядка влючения библиотек O_o
Вторая проблема была еще интересней - при компиляции вот такого куска кода

GLenum toGLEnum(OurType t) // OurType = enum из нескольких значений
{
 GLenum result = GL_POINS;
 switch (t)
 {
  case OurType_1 : 
  {
   result = GL_TRIANGLES;
   break;
  }
 // ... тут перечислялись все значения их OurType, НО не было default: { }
 }
 return result;
}

возвращалась какая-то хрень, хотя четко заходило в один из кейсов. Решилось это добавлением "default : { }"
Вот такая вот история...
Кстати, если в Target-Release добавить дефайн "_DEBUG" - логи выводятся

#14
10:39, 13 дек. 2010

А кто знает как в Бада СДК 1.2 выполнить пошаговую отладку приложения? Заранее спс.

Страницы: 1 2 Следующая »
BadaЖурнал

Тема в архиве.