Как сделать такой сервис, как Android System Services?
Я работаю над тем, что Android называет программными сенсорами. По логике вещей, я не могу поместить свои алгоритмы непосредственно в MotionManager для Android. Эти алгоритмы могут быть использованы для различных приложений. Некоторые конкретные параметры могут быть установлены любым приложением и влияют на поведение всех остальных. Выход из алгоритмов что-то вроде float[4]
на 100 Гц.
Я ищу хороший шаблон дизайна, но я не уверен, что это возможно с Android, потому что:
Я не могу напрямую добавить свой код в Android MotionManager (очевидно)
Базовая библиотека, импортированная во все приложения, не предназначена для этой цели.
"Bind" сторона Bind Services интересна, но, я думаю, они не предназначены для работы с несколькими приложениями. Более того, код для привязки не проще чем: [
registerListener (SensorEventListener listener, Sensor sensor, int samplingPeriodUs)
] ( https://developer.android.com/reference/android/hardware/SensorManager.html, android.hardware.Sensor, int)) для разработчика.AIDL может обрабатывать сторону службы "несколько приложений", но я не думаю, что это способ сделать это по той же причине, что и служба связывания (передача ссылок).
1 ответ
Вы смотрели на http://processors.wiki.ti.com/index.php/Android-Adding_SystemService?
Написание небольшой библиотеки для сокрытия заглушек и обработки исключений может позволить вам совместно использовать службу между приложениями с помощью простого API.