Вы можете сделать это:
Скажите, что действие A - это действие, которое вы хотите запустить только в первый раз, а действие B - это действие, которое система запустит после первого раза.
В вашем манифесте поместите Активность B в качестве вашей активности запуска. Затем внутри или лучше OnResume деятельности B положить следующее:
@Override
protected void onResume() {
super.onResume();
if(firstLaunch()){
startActivity(new Intent(this, A.class));
finish();
}else{
//Do your normal stuff
}
}
private boolean firstLaunch(){
SharedPreferences prefs = getSharedPreferences(
"Preferences",
Context.MODE_PRIVATE);
return prefs.getBoolean("firstLaunch",false);
}
Затем в своем действии A обязательно установите флажок в ваших предпочтениях, чтобы указать, что ваше приложение запускалось более одного раза. Итак, где-то внутри упражнения А поместите это:
private void setFirsLaunchFlag(){
SharedPreferences prefs = getSharedPreferences(
"Preferences",
Context.MODE_PRIVATE);
SharedPreferences.Editor edit = prefs.edit();
edit.putBoolean("firstLaunch",true);
edit.commit();
}