2016-03-22 2 views
0

У меня есть 2 действия (активность аудио-чата & активность сообщения чата). В настоящее время оба действия работают абсолютно нормально, но теперь я хочу, чтобы оба действия работали одновременно, как Messenger Whatsapp.Как начать новую деятельность, не убивая текущую активность

В режиме аудио-чата есть кнопка, чтобы войти в активность чата сообщений, но после того, как активность чата сообщения начнет работать, перестань работать.

Есть ли способ, которым я могу переключаться между этими двумя действиями, такими как Messenger Whatsapp.

+0

У вас есть код sniplet, показывающий, что вы делаете? Это поможет. Я предполагаю, что вы вызываете 'finish()' где-то? –

+0

Ваше решение состоит в том, чтобы поместить один из них в отдельный процесс, такой как Служба. Так как ваша деятельность обрабатывает аудио-чат, но затем вы получаете текстовые обновления из службы, которую ваша активность затем обновляет на экране. Если вы хотите, чтобы аудио-чат продолжался при навигации к различным частям приложения, для этого потребуется отдельная услуга. – NoChinDeluxe

+0

Вопрос вводит в заблуждение, пожалуйста, перефразируйте то, что вы хотите, в более конкретных деталях. Вы не убиваете текущую деятельность, следуя жизненному циклу (и, таким образом, 'A.onPause().', 'B.onCreate()', 'B.onResume()' .... если вам нужно, 'A' все еще есть. – Bonatti

ответ

1

Вы должны изменить подход. Когда вы начинаете новую активность B, операция A приостанавливается, поэтому она не может работать. Для вашей цели вы должны использовать один элемент Activity и show/hide (например: messagebox и audiobox)

0

Невозможно гарантировать, что действие, которое находится ниже другого действия, никогда не будет убито. Android может сделать это, чтобы восстановить память, когда это необходимо. Именно так Android был разработан для облегчения работы с ограниченными ресурсами.

Вместо этого, если вы хотите, чтобы пользователь плавно переключался между текстовым и аудио-чатом, вам нужно будет поддерживать интерфейс между этими двумя компонентами в одном и том же действии. Самый простой способ - просто иметь два разных набора представлений в иерархии представлений для активности и переключаться между ними, изменяя их видимость.

Смежные вопросы