2013-06-24 4 views
1

У меня есть активность регистрации, которую я хочу запустить только один раз, когда приложение будет запущено в первый раз. Если регистрация будет сделана, во второй раз, когда приложение будет запущено, я хочу перейти непосредственно ко второй операции - FirstWindow.Как заставить Activity запускаться только один раз, когда приложение запускается в первый раз?

Спасибо заранее!

+1

сохранить учетные данные в общих привилегиях или sqlite .. Тогда, если учетные данные существуют, нагрузка второго действия ivity else load registration activity – CRUSADER

+0

Это ссылка на сообщение, где я ответил http://stackoverflow.com/a/21822020/3317921 –

+0

Я решил эту проблему! Я связываю ответ на свой пост! Пожалуйста, проверьте. Надеюсь, поможет! http://stackoverflow.com/a/21822020/3317921 –

ответ

6

когда активность запускается в первый раз: сохранить истинное значение в совместно прив и каждый раз запуски приложений проверить общие прив если верно идти к следующей деятельности еще показать первую активность (Ur регистрации страницы)

1.Declare переменные

SharedPreferences pref; 
SharedPreferences.Editor editor; 

2.in onCrete метод

pref = getSharedPreferences("testapp", MODE_PRIVATE); 
editor = pref.edit(); 

3.When пользователь успешно регистрирует (нажмите на кнопку регистра)

editor.putString("register","true"); 
editor.commit(); 

Тогда каждый раз, и можно проверить с помощью:

String getStatus=pref.getString("register", "nil"); 
if(getStatus.equals("true")) 
redirect to next activity 
else 
show registration page again 
+0

Можете ли вы предоставить мне код? – user2515973

+0

Я отредактировал ответ, надеюсь, вам это поможет – KOTIOS

+0

Да, большое вам спасибо! – user2515973

0

Создайте действие с Theme.NoDisplay и сделайте его своей деятельностью для запуска (установите фильтр цели для запуска в манифесте). В onCreate проверьте, зарегистрирован ли пользователь или нет, и запустите соответствующее действие. Вы можете сохранить статус пользователя (зарегистрированного/незарегистрированного) в БД или в SharedPreferences.

0

Использование нулевой активности, чтобы проверить, что запуск в следующем, onCreate:

SharedPreferences sp= getSharedPreferences("first_time", 0); 

ActivityZero.this.finish(); 

if (sp.getBoolean("FirstTime", true)) 
    mainIntent = new Intent(ActivityZero.this, TutorialActivity.class);    
else 
    mIntent = new Intent(ActivityZero.this, MainActivity.class); 

ActivityZero.this.startActivity(mIntent);