Страница 1 из 1

Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 09:45
MeTeOpA
Вобщем ситуация следующая. Есть планшет Nexus 7. На нём lifecycle отрабатывает нормально, т.е. так как мне нужно. И есть плашет Assistant грн за 700. На нём мое приложение почему то вместе паузы отрабатывает onPause - > onDestroy->onCreate->onResume->onPause.
Собственно вопрос. Может ли жизненный цикл менять свое поведение в зависимости от устройства?

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 09:50
neoksi
MeTeOpA
Может, тут уж все зависит от того, какие производитель внес изменения в прошивку.
Тут видимо они не хранят приложения в памяти, чтоб устройство быстрее работало для пользователя.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 09:52
MeTeOpA
У вас был подобный опыт? Что обычно в таких случаях говорят заказчику?

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 09:56
neoksi
Заказчик платит деньги и он заказывает музыку.
Проще всего обработать ситуацию через onSaveInstance.
И вообще в принципе нужно быть готовым всегда, что система может в любой момент прибить твоё приложение из-за нехватки ресурсов.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 10:04
MeTeOpA
Посмотрел по памяти в этот момент... Памяти навалом. еще мб 150 свободно.
И К сожалению onSaveInstance не отрабатывает в моем случаем, такое впечатление что это специфическое поведение жизненного цикла.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 12:32
Foenix
neoksi писал(а):Заказчик платит деньги и он заказывает музыку.
Проще всего обработать ситуацию через onSaveInstance.
И вообще в принципе нужно быть готовым всегда, что система может в любой момент прибить твоё приложение из-за нехватки ресурсов.
только вчера эту тему разбирала - нет гарантии (написано разработчиком) что onSaveInstance сработает. У меня не срабатывает эта шняга.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 12:52
neoksi
Если, что-то не срабатывает напрямую эмулируй сам :).
Кто мешает нужные параметры сохранить в ондестрой и считать в онкреат? :)

Но проблема даже не в этом, а в том, что переходя с других языков мы на автопилоте пытаемся применить монолитную структуру приложения, как в других ос. А тут логика приложений больше похожа на веб. Нету целостности, все как отдельные отображаемые страницы.

П.С. Ко мне это тоже относится, первую версию я пытался монолитом сделать. Месяц потратил, чтоб переписать все. Пару часов назад закончил.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 13:01
Tamachi
Какие версии ОС в каждой из систем?

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 13:52
Foenix
neoksi писал(а):Если, что-то не срабатывает напрямую эмулируй сам :).
Кто мешает нужные параметры сохранить в ондестрой и считать в онкреат? :)

Но проблема даже не в этом, а в том, что переходя с других языков мы на автопилоте пытаемся применить монолитную структуру приложения, как в других ос. А тут логика приложений больше похожа на веб. Нету целостности, все как отдельные отображаемые страницы.

П.С. Ко мне это тоже относится, первую версию я пытался монолитом сделать. Месяц потратил, чтоб переписать все. Пару часов назад закончил.
никто не мешает, конечно, но нужно не напрямую сохранять папаметры, а писать классы и создавать, как тут правильно заметили - паттерны проектирования соответствующие
помню на дельфях был класс - положил в прилжение, отметил галочками какие нужно сохранять и воссоздавать параметры и забыл об этом.
А вообще нужно все разделять по-хорошему, MVС или как там его MVP

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 16:06
MeTeOpA
Olivka, скажите есть какой то выход из этой ситуации? Пятой точкой чую что ситуация похожа на грыжу на мяче : заточим под одну версию Оси, на другой что то другое вылезет. Мб какие то best practicies? Или что то в этом духе...

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 17:26
Foenix
на самом деле паттерны есть, просто это такое необъятное море для работы и исследования, ужас. Жизни не хватит, чтоб делать все правильно и чтоб работало вечно. Поэтому нужно делать правильно "хоть что-то", чтоб было не страшно если что код показать, а остальное по мере поступления.
Что же касается версий - имхо вводить смело ограничения, вот и все. Потом будет время - дорабатывать.. Хотя я сама не думаю что это прям правильно, но это выход..

Мне чего-то кажется, что и андроид сам по себе не вечный какой-то получился.
Если сам не загнется, то кто-нибудь кого-нибудь купит и эта лавочка сама накроется :)

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 19:48
MeTeOpA
Tamachi, 4.0 и 4.1
Olivka ну блин, а как же к примеру coolReader? Вот лично я сколько им пользуюсь, ни разу сбоев и багов не было...

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 19:54
Foenix
с душой, с любовью, вот как)) - вот честно.

и используя минимальные функции, возможности.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 22:55
rezak90
Делать весь этот велосипед и латать такую дыру ради одного планшета себе дороже, потратишь кучу часов которые заказчик потом не захочет платить, проще объяснить ему, к тому же с ним должен говорить PM or QA or BA или кто у вас там на проекте старший, они обычно умеют договариваться о таких вещах.

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 23:01
Tamachi
MeTeOpA писал(а):Tamachi, 4.0 и 4.1
Olivka ну блин, а как же к примеру coolReader? Вот лично я сколько им пользуюсь, ни разу сбоев и багов не было...
Не понял. Какое отношение к разговору имеет CoolReader?

Re: Жизненный цикл Activity разный?

Добавлено: 23 апр 2013, 23:05
Tamachi
Совет:
В манифесте укажите minSDKVersion = 8 или 9
Компиляцию делайте тоже ею.
А TargetSDKVersion установте в 17.

И отлаживайте именно под такой конфиг.

Тогда и на Ваших планшетах тоже будет работать одинаково!

Re: Жизненный цикл Activity разный?

Добавлено: 27 апр 2013, 09:51
MeTeOpA
Tamachi писал(а): Совет:
В манифесте укажите minSDKVersion = 8 или 9
Компиляцию делайте тоже ею.
А TargetSDKVersion установте в 17.

И отлаживайте именно под такой конфиг.

Тогда и на Ваших планшетах тоже будет работать одинаково!
Это что ж за совет такой?
2 версы по дефолту и так ставяться.
Вы вообще читали тему? У меня lifecycle разный на девайсах!
Tamachi писал(а):Какое отношение к разговору имеет CoolReader?
К примеру....
rezak90 писал(а):Делать весь этот велосипед и латать такую дыру ради одного планшета себе дороже, потратишь кучу часов которые заказчик потом не захочет платить, проще объяснить ему, к тому же с ним должен говорить PM or QA or BA или кто у вас там на проекте старший, они обычно умеют договариваться о таких вещах.
Слав, да вот в том то и проблема что кьюэй не могут с ним договориться и я ищу вариант напедалить велосипед.
Foenix писал(а):на самом деле паттерны есть
Ссылку плиз.

Re: Жизненный цикл Activity разный?

Добавлено: 27 апр 2013, 13:49
rezak90
у меня такая проблема была с телефоном с выдвижной клавиатурой, когда выезжяла клава то активити пересоздавалось, а всего то нужно было манифест подколдавать =)