Как получить выгоду от «теплого старта» из сохраненного пакета состояний экземпляра, переданного в onCreate() или onRestAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как получить выгоду от «теплого старта» из сохраненного пакета состояний экземпляра, переданного в onCreate() или onRest

Сообщение Anonymous »


После прочтения этих документов по Android мы не можем понять, как извлечь выгоду из «проблемы горячего запуска» из сохраненного пакета состояния экземпляра, переданного в onCreate() или onRestoreInstanceState((). В документе о сохранении состояний говорится, что «Сохраненное состояние экземпляра» сохраняется только для примитивных типов и простых небольших объектов, таких как String. Это, очевидно, не может существенно сэкономить время запуска. А пример кода в документе жизненного цикла активности сохраняет предварительно пройденный уровень и счет игры и предполагает, что это может сократить время запуска. Но как? Означает ли он, что мы можем использовать только уровень и очки, чтобы уменьшить необходимую загрузку объектов? Но можем ли мы действительно извлечь для этого пользу из сохраненного состояния экземпляра?

В этих документах мы не можем найти реальный пример кода, который бы явно сокращал время горячего старта. Действительно ли некоторые ребята получают пользу от сохраненного экземпляра?

https://developer.android.com/topic/ Performance/vitals/launch-time#warm

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

https://developer.android.com/topic/lib ... ing-states

(Сохраненное состояние экземпляра) только для примитивных типов и простых небольших объектов, таких как String

https://developer.android.com/guide/com ... cycle#asem

В этом документе содержится пример кода для восстановления некоторой информации об уровне и счете, как в игре.
public void onRestoreInstanceState(Bundle saveInstanceState) { // Всегда вызывайте суперкласс, чтобы он мог восстановить иерархию представлений super.onRestoreInstanceState(savedInstanceState); // Восстанавливаем члены состояния из сохраненного экземпляра currentScore = saveInstanceState.getInt(STATE_SCORE); currentLevel = saveInstanceState.getInt(STATE_LEVEL); }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»