在此项目:https://github.com/neuberfran/SmartDrive5中,文件: ModoComFirebase.kt 。我有问题,PID已在使用BCM18,因为此gpio已在< strong> DriverService.kt 文件之前。
我的问题是:Application类 ModoAutomatico.kt 没有onPause和onResume方法。在这种情况下,如何使用前台服务来解决我的问题?
答案 0 :(得分:2)
应用程序类ModoAutomatico.kt没有onPause和onResume方法。
这是因为Application类是单例。它会在您的应用启动后立即启动,并且永远不会暂停,停止或销毁。由于您已经从应用程序绑定了DriverService
,因此这意味着您的服务也始终在后台运行(除非它崩溃了)。
BCM18已被PID使用,因为此gpio之前已在DriverService.kt文件中打开。
一次只能与外围资源建立一个活动连接。如果要使用已在另一个组件中打开的GPIO,则必须先close()
激活GPIO连接,然后才能打开新的GPIO。
如果您要从服务中管理所有按钮连接,则应用程序的其余部分应与该服务进行对话以与那些外设交互,而不是尝试处理多个GPIO连接。