2 / 2 / 0
Регистрация: 15.03.2018
Сообщений: 11

Как создать связь активити - сервис

04.04.2018, 06:39. Показов 1102. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Столкнулся с вопросом.

При закрытии приложения необходимо передать часть данных в сервис, для предотвращения их утраты, а также выводить уведомление с счетчиком (своим, стандартный счетчик времени не подходит).
Почти получилось.
В сервис данные уходят, в самом сервисе уведомление обновляю при обновлении счетчика, при нажатии на уведомление данные в активити уходит.

Но.
Есть вопрос как получить обратно данные не по нажатию на уведомление, а при обычном открытии приложения?
Необходимо что бы работало и то и то. Как создать связку активити -> сервис, при чем двухстороннюю? Плюс к этому данные должны считываться с сервиса в момент получения фокуса у активити, а сам сервис останавливаться.

Прочитал все что мог найти. Подскажите как действовать и что почитать или какие есть алгоритмы работы в данных ситуациях?

Код скинуть не могу, так как он не работает вообще и по большому счету скидывать нечего. Интересует только теория как делать, но если кто нибудь покажет на примере буду очень благодарен.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.04.2018, 06:39
Ответы с готовыми решениями:

Как из Активити запустить сервис ?
Друзья как из Активити запустить сервис я знаю, но проблема в том что после того как я запускаю сервис и прописываю в него действия которые...

После запуска приложения запускать не главное активити, а сервис
как сделать чтобы после запуска приложения запускалось не главное активити а сервис может как то прописать метод onStart в классе...

Как вызвать метод в активити классе из обычного не активити класса?
Есть активити в котором вводятся логин и пароль. При нажатии кнопки "войти" в отдельном классе "сокетсервер"(+в отдельном потоке)...

2
1570 / 1168 / 426
Регистрация: 08.05.2012
Сообщений: 5,219
04.04.2018, 10:09
https://github.com/greenrobot/EventBus
0
2 / 2 / 0
Регистрация: 15.03.2018
Сообщений: 11
05.04.2018, 02:24  [ТС]
Короче решил вопрос. Если кому интересно.
В onCreat создаю интент и ServiceConnection. Потом в нужном мне момент запускаю сервис, подключаюсь к нему через биндинг. Таким образом получаю доступ к методам сервиса. В методах сервиса делаю геттеры на те переменные, которые нужно получать в реальном времени. С помощью handler опрашиваю геттеры.
По поводу сохранения. Те данные, которые нужно просто сохранить кидаю в Preference в методе onStop, достаю в методе onResume.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.04.2018, 02:24
Помогаю со студенческими работами здесь

Как создать сервис, который не убивается встроенным в андроид таск киллером?
Здравствуйте! Нужно создать такой сервис, который будет продолжать работу (например системные сервисы, скайп и другие, которые продолжают...

На телефоне highscreen 3 на всех активити происходит быстрый самовозврат к главной активити
Сделал меню в виде ListView. При клике на меню запускаются активити. На эмуляторе работает, на телефоне моем LG все работает. На телефоне...

Вызов новой активити не из класса активити
Есть 4 класса: 1) WelcomeActivity; 2) MainActivity; 3) PopUpActivity; 4) Client. Программа работает с сервером и получает...

Изменение параметров активити из другого активити
Как сделать так чтобы из первого активити поменять final ImageView img=(ImageView)findViewById(R.id.image1); ...

Отображение активити поверх другого активити
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по нажатию кнопки настройки, нужно открыть активити с настройками,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
Реализация Domain-Driven Design с Java
Javaican 20.05.2025
DDD — это настоящий спасательный круг для проектов со сложной бизнес-логикой. Подход, предложенный Эриком Эвансом, позволяет создавать элегантные решения, которые точно отражают реальную предметную. . .
Возможности и нововведения C# 14
stackOverflow 20.05.2025
Выход версии C# 14, который ожидается вместе с . NET 10, приносит ряд интересных нововведений, действительно упрощающих жизнь разработчиков. Вы уже хотите опробовать эти новшества? Не проблема! Просто. . .
Собеседование по Node.js - вопросы и ответы
Reangularity 20.05.2025
Каждому разработчику рано или поздно приходится сталкиватся с техническими собеседованиями - этим стрессовым испытанием, где решается судьба карьерного роста и зарплатных ожиданий. В этой статье я. . .
Cython и C (СИ) расширения Python для максимальной производительности
py-thonny 20.05.2025
Python невероятно дружелюбен к начинающим и одновременно мощный для профи. Но стоит лишь заикнуться о высокопроизводительных вычислениях — и энтузиазм быстро улетучивается. Да, Питон медлительнее. . .
Безопасное программирование в Java и предотвращение уязвимостей (SQL-инъекции, XSS и др.)
Javaican 19.05.2025
Самые распространёные векторы атак на Java-приложения за последний год выглядят как классический "топ-3 хакерских фаворитов": SQL-инъекции (31%), межсайтовый скриптинг или XSS (28%) и CSRF-атаки. . .
Введение в Q# - язык квантовых вычислений от Microsoft
EggHead 19.05.2025
Microsoft вошла в гонку технологических гигантов с собственным языком программирования Q#, специально созданным для разработки квантовых алгоритмов. Но прежде чем погружаться в синтаксические дебри. . .
Безопасность Kubernetes с Falco и обнаружение вторжений
Mr. Docker 18.05.2025
Переход организаций к микросервисной архитектуре и контейнерным технологиям сопровождается лавинообразным ростом векторов атак — от тривиальных попыток взлома до многоступенчатых кибератак, способных. . .
Аугментация изображений с Python
AI_Generated 18.05.2025
Собрать достаточно большой датасет для обучения нейронной сети — та ещё головная боль. Часами вручную размечать картинки, скармливать их ненасытным алгоритмам и молиться, чтобы модель не сдулась при. . .
Исключения в Java: советы, примеры кода и многое другое
Javaican 18.05.2025
Исключения — это объекты, созданные когда программа сталкивается с непредвиденной ситуацией: файл не найден, сетевое соединение разорвано, деление на ноль. . . Список можно продолжать до бесконечности. . . .
Как сделать SSO (Single Sign-On) в C# приложении
stackOverflow 18.05.2025
SSO — это механизм, позволяющий пользователю пройти аутентификацию один раз и получить доступ к нескольким приложениям без повторного ввода учетных данных. Вы наверняка сталкивались с ним, когда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru