Ответ Януша великолепен.
Единственное, что я хочу добавить, что слишком долго для комментария, это то, что вы можете перейти на домашний экран, не имеяссылка на текущее действие.
Код Януша должен вызываться из действия или фрагмента из-за startActivity()
,
Чтобы обойти это, вы можете сохранить статическую ссылку на ваши приложения. Контекств файле приложения:
public class YourApplication extends Application
{
private static Context mAppContext;
public void onCreate()
{
super.onCreate();
...
YourApplication.mAppContext = getApplicationContext();
}
public static Context getContext()
{
return mAppContext;
}
}
Теперь вы можете отправлять пользователя на домашний экран устройства из любого класса в вашем приложении, а не только из «Деятельности», «Фрагментов» или других классов со ссылкой на текущую активность (выможет решить, хорошо это или плохо):
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
YourApplication.getContext().startActivity(startMain);