На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Hsilgos
  
> Android. Задание стартовой активности в runtime
    Всем привет!

    Как уже кто-то знает, я пишу приложение Android для заказа такси фирмы. Форму заказа уже доделал на 95%, теперь хочу поработать над дополнительными возможностями, которые будут доступны из меню. Решили с шефом, что информация по заказам, пользовательский профиль и прочее будет храниться на сервере, поэтому, пока я не сделаю хотя бы тестовую регистрацию и авторизацию (пока без SMS, прикрутим потом), продвигаться дальше и не могу, так как клиентские данные хранимые на сервере нужно однозначно идентифицировать ключом с паролем. В качестве ключа будет выступать сотовый номер клиента, пароль будет получаться на основе его же и отправленного клиенту по SMS 4-значного цифрового кода. Соответственно, при первом запуске есть необходимость запросить у клиента мобильный номер для отправки этого кода (в тестах пока просто буду возвращать код с сервера в это же приложение и показывать его). Далее, клиент вводит этот код и получает полный доступ ко всем возможностям программы. При последующих запусках нет необходимости запрашивать этот код, он будет хранится в сериализованных данных приложения, таким образом, можно будет сразу открывать главный Activity - форму заказа.

    Итак, что я из всего этого имею? Получается, что у меня должна быть возможность в runtime определять, какая активность должна быть стартовой и ее запускать. Вместе с тем, другого способа задания стартовой активности, кроме как в манифесте я не знаю. Нагуглить пока не удалось. Вариант, когда какая-то активность будет всегда стартовой, но не будет что-то визуализировать, а будет сразу передавать управление какой-нибудь другой активности на основании решения о том, что именно сейчас надо, видится мне костыльным. Есть ли нормальное решениие этой задачки?

    Добавлено
    P.S. Опс, сделал опечатку в названии темы: rintime. И не исправить уже. Надеюсь, что народ все же поймет:)
    Сообщение отредактировано: Hsilgos -
      А в чем проблема в стартовой activity вызывать нужную for result, а потом его обрабатывать? Ничего костыльного. :)
        А зачем for result-то? И его обрабатывать? Не очень Вас понял. В другом приложении я этот метод использовал, но там обе нужные, которая вызывалась - эта была форма для настроек. А тут совсем другое. Если регистрация уже была пройдена в одном из предыдущих сеансов программы, эту активность и не надо показывать. А если еще не была, она должна быть первой.
          Activity регистрации в общем случае не является приоритетной для показа. В процессе работы с приложением пользователь ее увидит 1-2 раза (подумает, что сразу регаться не хочется, например, а потом либо удалит приложение, либо еще раз зайдет и введет данные). Т.е. страха в том, что эта activity появится из стартовой, совершенно нет (а если приложение не тормозное, то и наметанному глазу будет сложно уловить переключение). Если результаты с нее не нужны, то и for result тоже - это очевидно.
            Нашел ответ на StackOverflow тут: http://stackoverflow.com/questions/5170933...b=votes#tab-top и тут: http://stackoverflow.com/questions/9530505...-applicati?rq=1

            Соотносится с тем, что Вы написали, просто тут есть и код, а для меня пока еще не все так очевидно, я на Android начал только этой весной работать. Действительно, стартовую активность можно задать только в манифесте. Попробую сделать как там.
              Успехов! :)
                Спасибо!
                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script execution time: 0,0193 ]   [ 14 queries used ]   [ Generated: 21.05.24, 14:31 GMT ]