Android-вещи с bindservice и kotlin - onResume и onPause или сопрограммы или RxJava - PullRequest
0 голосов
/ 29 марта 2019

В этом проекте: https://github.com/neuberfran/SmartDrive5, файл: ModoComFirebase.kt У меня есть проблема, BCM18 уже используется PID, потому что этот gpio был открыт в DriverService.kt файл до.

Мой вопрос таков: класс Application ModoAutomatico.kt не имеет методов onPause и onResume. Как использовать службу переднего плана в этом случае для решения моей проблемы? enter image description here

1 Ответ

2 голосов
/ 30 марта 2019

Класс приложения ModoAutomatico.kt не имеет методов onPause и onResume.

Это потому, что класс Application является одноэлементным. Он запускается после запуска вашего приложения и никогда не останавливается, не останавливается и не уничтожается. Поскольку вы связали DriverService с приложением, это означает, что ваша служба также всегда работает в фоновом режиме (если не произойдет сбой).

BCM18 уже используется PID, поскольку этот gpio был открыт в файле DriverService.kt ранее.

Одновременно может быть только одно активное соединение с периферийным ресурсом. Если вы хотите использовать GPIO, который уже открыт в другом компоненте, вы должны сначала close() активное соединение GPIO, прежде чем сможете открыть новое.

Если вы собираетесь управлять всеми своими кнопочными соединениями из службы, то остальная часть приложения должна взаимодействовать с этой службой, чтобы взаимодействовать с этими периферийными устройствами, а не пытаться манипулировать несколькими соединениями GPIO.

...