将来自 Linux OS 内核的信息显示为 Android 通知

Posted

技术标签:

【中文标题】将来自 Linux OS 内核的信息显示为 Android 通知【英文标题】:Showing information from Linux OS kernel as Android notification 【发布时间】:2021-07-28 09:57:46 【问题描述】:

我正在尝试将内核事件显示为 android 通知。 例如,当新的 USB 设备插入智能手机时,会向用户显示 USB 设备相关信息(类似于手机连接到 PC 时的 iPhone USB 通知)。

因为 Linux 内核和 Android 之间有多个层(例如,HAL 和 Android 运行时),所以我尝试做的可能需要添加新组件或修改 Android 框架。也就是说,我需要找到一种在 Linux 和 JAVA(Android 运行时)之间架起桥梁的方法。

因此我的问题如下。

(1) 是否可以将一些内核信息推送到现有组件以将信息传递到 Android 层?例如,信息将被发送到 Android 引用的内核驱动程序(例如 HAL),该驱动程序收集内核事件以通知用户。

(2) 如果我需要添加新组件,预期的更改(例如 HAL 和库)是什么?请告诉我实现这一目标的起点。

【问题讨论】:

【参考方案1】:

如果您只想插入 USB,那您就太复杂了。只需为 ACTION_USB_DEVICE_ATTACHED 创建一个 BroadcastReceiver,您的应用就会收到 USB 连接事件的通知。 ACTION_USB_DEVICE_DETACHED 是用于分离的匹配项。

【讨论】:

我需要在信息实际连接到智能手机之前显示信息(在设备探测期间)。获得用户许可后,继续附件过程。 我假设您正在为自定义操作系统执行此操作?因为这绝不是您在已经安装的版本上可以使用的东西 是的,它将在开源Android平台(开发板)上开发。

以上是关于将来自 Linux OS 内核的信息显示为 Android 通知的主要内容,如果未能解决你的问题,请参考以下文章

linux文件管理03 and 04--2week

OS内核参数和JVM参数的调整

硬嗑HarmonyOS开篇之Linux内核

linux-cento os学习笔记3

[架构之路-28]:目标系统 - 系统软件 - Linux OS内核功能架构图解内核构建内核启动流程

Linux内核使用哪些调度算法?