Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Jeremi
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 16
#1

Определить первый запуск Activity

13.11.2016, 23:48. Просмотров 938. Ответов 6

Ребята помогите. Как определить первый раз запускается Activity или нет. У меня задание: при первом запуске активити выполняется один код, а когда юзер выйдет из него в главное меню и запустит снова - другая часть кода.

Как и с помощью чего такую проверку аctivity можно сделать?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2016, 23:48
Ответы с готовыми решениями:

Запуск activity из service
Добрый вечер! Как правильно запускать активность из сервиса? Метод...

Запуск activity на половину экрана
Можно ли запустить activity, например на полэкрана, чтобы видно было первой...

Запуск Activity из другого apk
Здравствуйте! Попытаюсь максимально собрать мысли в кучу и описать, то что мне...

Запуск Activity по клику на виджет
ни как не пойму как активити то вызвать из виджета?тост получилось чтоб...

Запуск активности из класса, который не наследуется от Activity
Есть класс, который отвечает за обработку логики. Есть функция, которая при...

6
Mikalai
264 / 240 / 95
Регистрация: 11.01.2015
Сообщений: 668
14.11.2016, 00:03 #2
Лучший ответ Сообщение было отмечено Jeremi как решение

Решение

Jeremi, можно сделать так:
пару констант
Java
1
2
    public static final String SP_NAME = "spName";
    public static final String SP_KEY_FIRST_START = "spKeyFirstStart";
и в onCreate твоей activity
Java
1
2
3
4
5
6
7
8
        SharedPreferences sp = getSharedPreferences(SP_NAME, MODE_PRIVATE);
        boolean firstStart = sp.getBoolean(SP_KEY_FIRST_START, true);
        if(firstStart) {
            sp.edit().putBoolean(SP_KEY_FIRST_START, false).apply();
            //тут запускай код для первого старта
        } else {
            //тут уже не первый старт
        }
1
vxg
Модератор
3236 / 2040 / 319
Регистрация: 13.01.2012
Сообщений: 7,898
14.11.2016, 11:32 #3
Jeremi, при повторном запуске savedInstanceState передаваемый в onCreate активити не равен null. естественно это не первый во вселенной запуск, а первый запуск с момента предыдущего прекращения работы приложения
0
Antohsa
8 / 12 / 0
Регистрация: 18.10.2016
Сообщений: 115
14.11.2016, 17:24 #4
Мне кажется проще можно сделать...

Объявить глобальную переменную first, при OnStart() в true... При он onDestroy в false;
0
OlegJV
103 / 103 / 28
Регистрация: 13.03.2016
Сообщений: 474
14.11.2016, 17:38 #5
Вызова onDestroy можно будет до следующего года ждать...
0
Pablito
2665 / 2147 / 729
Регистрация: 12.05.2014
Сообщений: 7,494
Завершенные тесты: 1
14.11.2016, 17:41 #6
Цитата Сообщение от Antohsa Посмотреть сообщение
Объявить глобальную переменную first, при OnStart() в true... При он onDestroy в false;
читай внимательно - тс хочет при самом первом старте программы выполнить код
а не при каждом запуске

Добавлено через 38 секунд
Определить первый запуск Activity
самый верный ответ уже дан
0
Alexvp
111 / 75 / 8
Регистрация: 03.08.2014
Сообщений: 386
14.11.2016, 22:00 #7
Цитата Сообщение от Паблито Посмотреть сообщение
при самом первом старте
или при первом запуске после удаления пользователем данных приложения в настройках.
Действительно, лучший вариант через SharedPreferences, сам так давно пользуюсь.
0
14.11.2016, 22:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.11.2016, 22:00

Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity
У меня в параллельном потоке происходит куча apply() Решение использовать...

Изменение layout-элементов одного activity из другого activity
Здравствуйте! Я хочу изменить размер или цвет текста TextView в одном...

Android - Передача данных с одного Activity на другое Activity
Здравствуйте , возникла необходимость получения числовых (int и float ну или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru