Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка приложения, Не работает на реальном телефоне  
:(
    Опции темы
Spegulo
Дата 17.6.2009, 19:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 2.4.2009
Где: Новосибирск

Репутация: нет
Всего: нет



И снова здравствуйте smile

Столкнулся с такой проблемой:
Приложение работает в стандартном эмуляторе netbeans и в моторольном. заливаю на телефон, устанавливаю - все нормально, запускаю - начинает грузиться, а потом вылетает с сообщением "Ошибка приложения". Изначально, вроде работало, но с какого места перестало не знаю. Ничего нестандартного (чтение файлов и т. д.) не использую, все в рамках GameCanvas и немного своих классов.

Почему такое может быть?

P.S. Во вложении "приложение" smile По тестируйте, плиз smile

Это сообщение отредактировал(а) Spegulo - 17.6.2009, 19:39

Присоединённый файл ( Кол-во скачиваний: 15 )
Присоединённый файл  Boatle.zip 28,27 Kb
PM MAIL ICQ   Вверх
W0LF
Дата 17.6.2009, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



в таких случаях помогают принтлайны прямо на экране телефона.
выводите тупо в месте загрузки через строку-две-три на экран какой-нидь текст с индексом 1,2,3 и тп
и вы тогда увидите на каком месте вылетает.
и еще одно, ни в коем случае не хо усомниться в Ваших знаниях, просто встречал в жизни на примерах - для некоторых нормальная работы в эмуляторе - это с вылетом какого-нидь эксепшина, который просто игнорят либо не замечают, в эмуле продолжает работать нормал, но вот фон именно и бросает ошибку приложения, при чем это обычно стандарнтый unchecked exception ArrayIndexOutOfBounds, который так и не словили...


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
Spegulo
Дата 18.6.2009, 04:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 2.4.2009
Где: Новосибирск

Репутация: нет
Всего: нет



Цитата(W0LF @ 18.6.2009,  01:02)
в таких случаях помогают принтлайны прямо на экране телефона.
выводите тупо в месте загрузки через строку-две-три на экран какой-нидь текст с индексом 1,2,3 и тп
и вы тогда увидите на каком месте вылетает.

Хм, идея, попробую
Цитата(W0LF @ 18.6.2009,  01:02)

и еще одно, ни в коем случае не хо усомниться в Ваших знаниях, просто встречал в жизни на примерах - для некоторых нормальная работы в эмуляторе - это с вылетом какого-нидь эксепшина, который просто игнорят либо не замечают, в эмуле продолжает работать нормал, но вот фон именно и бросает ошибку приложения, при чем это обычно стандарнтый unchecked exception ArrayIndexOutOfBounds, который так и не словили...

Сейчас специально перепроверил - эксепшенов нету smile



PM MAIL ICQ   Вверх
Spegulo
Дата 20.6.2009, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 2.4.2009
Где: Новосибирск

Репутация: нет
Всего: нет



Обнаружил очень интересную ситуацию. 
Итак, есть gameCanvas. Есть несколько классов, формирующих в себе разные LayerManager-ы для вывода на GameCanvas. То есть в этих классах происходит укладка к спрайтов на LM, который потом в классе GameCanvas отрисовывается через paint. В формирующем классе LayerManager представлен свойством. А теперь два фрагмента кода.
Код

class someClass
public gLayer
.......
    public LayerManager getLayers(){
        return gLayer;
    }

/***/

class GameCanvas
.......
someClass.getLayers().paint(gGraphics, 0, 0);

и

Код

class someClass
public gLayer
.......
    public LayerManager getLayers(){
        return gLayer;
    }

/***/

class GameCanvas
.......
someClass.gLayer.paint(gGraphics, 0, 0);

Первый отрабатывает на эмуляторе, но на реальном телефоне выдает "Ошибка приложения", второй нормально работает и там и там.
А теперь, уважаемые знатоки, вопрос - где я дурак? smile Почему чуть ли не основной принцип ООП не срабатывает?

P.S. публичность/приватность gLayer сути не изменяет.

PM MAIL ICQ   Вверх
math64
Дата 20.6.2009, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2505
Регистрация: 12.4.2007

Репутация: 8
Всего: 72



Какой конкрентый тип gLayer?  
PM   Вверх
W0LF
Дата 20.6.2009, 23:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



как я понял, код идентичный, тока отличается непосредственным обращением к свойству и через геттер, валится в 
Код

someClass.getLayers().paint(gGraphics, 0, 0);

попробуйте обрамить эту строку в try/catch и вывести ексепшн на экран телефона


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
Spegulo
Дата 21.6.2009, 06:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 2.4.2009
Где: Новосибирск

Репутация: нет
Всего: нет



Цитата(math64 @ 21.6.2009,  00:12)
Какой конкрентый тип gLayer?

LayerManager, все как надо

Добавлено через 1 минуту и 32 секунды
Цитата(W0LF @ 21.6.2009,  02:58)

попробуйте обрамить эту строку в try/catch и вывести ексепшн на экран телефона

Попробую, наверное, уже позже. Сроки по сдаче приложения горят smile
PM MAIL ICQ   Вверх
W0LF
Дата 21.6.2009, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



сроки можно отодвинуть, риски должен покрывать клиент, а не программист.
но в Вашем случае можно сделать замену строки - Вам повезло =)


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
Rpahut
Дата 8.7.2009, 01:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


0xdeadbeef
*


Профиль
Группа: Участник
Сообщений: 243
Регистрация: 9.4.2006

Репутация: нет
Всего: 7



Может быть анонимная переменная (?=someClass.getLayers()) подкачала.
У меня было похожее с drawString(new String(...)) smile .
--------------------
C/C++ GameDevRSS Раздела программирования игрOpenGL - уроки от NeHeКак продать идею?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0479 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.