вторник, 12 июля 2011 г.

Как выйти программно из любого места приложения?

Постановка задачи: Зделать стандартный способ выхода из любого места приложения под андроид (аналог джавовского System.exit(0)). 
Версия Android-а: 1.6


Вот так вот описан у меня выход в классе, от которого наследуются все мои Activity.

private static ArrayList<AnyActivity> allActivities = new ArrayList<AnyActivity>();


    @Override
    protected void onDestroy() {
    allActivities.remove(this);
        super.onDestroy();
    }


@Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        allActivities.add(this);
    }




    public final void quit() {
        for (int i = allActivities.size() - 1; i >= 0; i--) {
        allActivities.get(i).finish();
        }


Перед запуском quit нужно закрыть все сервисы, если Вы их использовали в своем приложении.
C данной функцией выхода могут быть проблемы, если в каком-либо из Activity возникла ошибка.

Комментариев нет:

Отправить комментарий