0

在这个项目中:https ://github.com/neuberfran/SmartDrive5 ,文件:ModoComFirebase.kt我有问题 BCM18 已经被 PID 使用,因为这个 gpio 之前是在DriverService.kt文件中打开的。

我的问题是:Application 类ModoAutomatico.kt没有 onPause 和 onResume 方法。在这种情况下如何使用前台服务来解决我的问题?在此处输入图像描述

4

1 回答 1

2

Application 类 ModoAutomatico.kt 没有 onPause 和 onResume 方法。

这是因为 Application 类是一个单例。它在您的应用程序启动后启动,并且永远不会暂停、停止或销毁。由于您DriverService已从应用程序绑定,这意味着您的服务也始终在后台运行(除非它崩溃)。

BCM18 已经被 PID 使用,因为这个 gpio 之前是在 DriverService.kt 文件中打开的。

一次只能有一个与外围资源的活动连接。如果要使用已在另一个组件中打开的 GPIO,则必须先连接到close()活动的 GPIO 连接,然后才能打开新的连接。

如果您要从服务中管理所有按钮连接,则应用程序的其余部分应该与该服务通信以与这些外围设备进行交互,而不是尝试处理多个 GPIO 连接。

于 2019-03-30T04:30:10.087 回答