У меня есть две активности A и B. Активность A начинает активность B. В активности B у меня есть карта с маркером. Эта операция B запустит службу, которая возвращает каждые x секунд новые позиции маркеров на карте, отслеживая маркер маршрута. Я хочу, чтобы, когда я нажимаю кнопку «Назад», чтобы вернуться к активности A, когда я вернусь к активности B, я хочу отобразить карту, а также оставил ее. Что вы предлагаете?Как восстановить уже открытую активность?
ответ
Вы можете переопределить метод onbackpressed и написать функцию внутри этого метода, которая вернет вам геолокацию маркера при нажатии на нее. Переносите это местоположение в своем приложении в зависимости от того, какой вы предпочитаете .static или константы или sharedpref или даже переходите к деятельность a. Когда активность б запускается снова проверить, если эта переменная имеет значение, и если он затем отправить это место на рынке и карта
Вы должны использовать следующую строку в ваш манифест деятельности B:
...
android:launchMode="singleTask"
...
Например:
<activity
android:name=".activities.B"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="portrait">
</activity>
Это именно то, что вам нужно. Надеюсь, поможет!
Сохранить свои позиции на Sharepref или Sqlite OnDestroy(), и когда активность B активен снова и ваши данные (на локальном диске) не равно нулю, то прочитать оттуда и снова начать маршрут отслеживания новых позиций