Как поддерживать связь SAP всегда между приложением Android (потребитель) и приложением Gear (поставщик)? - PullRequest
0 голосов
/ 26 апреля 2018

У нас есть приложение для Android, которое обнаруживает отслеживание сна (может работать до 12 и более часов) от различных датчиков, и мы хотели бы добавить к нему серию Tizen Gear.

Мы используем много способов взаимодействия с каждым (BLE, сервер-сервер и т. Д.)

Что я уже сделал -

У меня есть простое приложение пользовательского интерфейса Tizen (поставщик), в котором для пользователя работает только таймер, позволяющий увидеть, как долго выполняется измерение, который взаимодействует с приложением Android (потребитель) с помощью SAP. Мой базовый код взят из примера HelloAccessory, который выглядит отлично.

У меня также есть сервисное приложение, которое блокирует процессор и запускает отслеживание HRM и датчика ACC. Приложение «Служба» прекрасно работает даже в течение нескольких часов и, похоже, не потребляет заметного заряда батареи, так как я запрашиваю его периодически и не всегда.

Дело в том, что через несколько часов и, может быть, даже через несколько минут соединение кажется потерянным (у меня 513 - соединение закрыто), и я не могу его восстановить вообще. Также кажется, что мне нужно открыть приложение Gear, прежде чем открывать приложение Android, чтобы соединение было живым.

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

То, что я хочу, это взаимодействовать с приложением Gear ТОЛЬКО из приложения Android, то есть даже если приложение Gear закрыто, я все равно хотел бы запустить его и запустить приложение Service, но кажется, что соединение не работает приложение Tizen UI. Это вообще возможно? Возможно ли использовать BLE / GATT для этого типа соединения? Я хочу иметь возможность подключаться к приложению Gear по требованию ВСЕГДА.

Любая помощь будет оценена. Если код нужен, пожалуйста, дайте мне знать.

Спасибо!

1 Ответ

0 голосов
/ 27 апреля 2018

Что касается моего опыта разработки на Tizen, то сценарий таков, что ваш процесс / приложение завершается системой. После недавнего обновления ОС Tizen стал очень агрессивно относиться к управлению энергоресурсами.

Я еще не видел ни одной функции API в Accessory SDK для запуска приложения tizen с помощью телефона Android, это всего лишь канал связи. Я бы посоветовал вам запустить приложение tizen с самого конца tizen, используя Tizen appControl, когда вам это нужно. Проверяя ваши требования, Alarm API будет разумным способом для вас. Например: используйте функцию alarm_schedule_after_delay (), чтобы запустить приложение после необходимого периода. Вы можете вызвать функцию в app_terminate_cb () . Таким образом, каждый раз, когда приложение (сервис / пользовательский интерфейс) убивается, оно устанавливает расписание для восстановления.

Кроме того, вы можете проверить этот вопрос . В вопросе OP поделились некоторыми хорошими способами, чтобы приложение Tizen оставалось живым / работающим, некоторые могут подойти для вашего случая.

...