Да, вы не можете запустить действие, поскольку действие onBackPressed (), когда ваш поток спит, вызовет исключение InterruptedException.
Чтобы начать задание в любом случае, вы можете переместить намерение внутри блока catch следующим образом.
public class Main3Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main3);
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
Intent intent = new Intent(this, Main2Activity.class);
startActivity(intent);
}
}
@Override
public void onBackPressed() {
super.onBackPressed();
finish();
}
}