-1

大家好,我是韩国人,不太会用英语,所以如果我说的不恰当的话,请尽量理解。

所以,我的状态是我有 odroid-s。

我想要做的一个月或更长时间是我想把 android 变成 HelloWorld。

我想说的是,在 odroid-s 上,bootloader 部分,内核部分是相同的,但框架部分(将是 android),我将删除所有 android 部分并仅用 HelloWorld 程序替换它。这个 HelloWorld 程序的目的是在屏幕上显示 HelloWorld。

我想我发现的是,当我在正常引导日志和我删除所有系统分区部分(这是 android 系统分区部分)之间的“vimdiff”引导日志时,android 内核的 init继续并执行控制台(/bin/ sh), netd(bin/netd), ... 它启用了 adb 并完成了他的工作。

所以我的结论是,我需要使用未修改的 Linux 内核并将其修改为 odroid-s,并将该内核用于我的 HelloWorld 程序!

我想问的是……我做得对吗?T_T

我现在的目标是让 HelloWorld 从这个 odroid-s 设备中出来......

请有人帮助我。如果有人不明白我写了什么请告诉我,我会修复它。谢谢阅读....

4

1 回答 1

1

对 linux 内核的修改可能与您的目标无关,因此为了简单起见,您不妨保留它们。

你最大的挑战是输出——你想把它送到哪里?如果您的设备之一具有(或可以具有正确的内核配置)调试串行端口,那么编写由 init 脚本触发的内容将非常容易(甚至在脚本中使用“echo”)在该端口上输出您的消息。

但是你很可能想在屏幕上放一些东西。这将变得更加复杂,并且可能取决于设备。android 运行时为实际应用程序执行此操作的方式将比您可能想了解的要复杂得多。

更实用的方法可能是查看启动动画是如何完成的。对于初学者,您可以将其替换为显示“hello world”的静态图像。一旦你能做到这一点,下一步可能是找到一些字符生成器代码。最后,您可能想要实现滚动和其他类似终端的功能。

作为一种替代方法,可以为某些 android 设备构建更传统的 linux - 例如 debian 或 ubuntu。这些可能包括能够在设备屏幕上显示的控制台实现。

另一个想法是,如果您对愿意在设备上保留多少 android 有足够的灵活性,您可以构建一个版本的 android 终端仿真器示例,修改为主屏幕替代品。您也许可以删除很多 android 组件(最终包括默认主屏幕)。或者在一个安全的设备上(即大多数没有root的消费设备)你可以只做主屏幕更换,同时保持实际系统不变。对于想要运行其他东西的用户来说,它并不安全,但通常用户只会与您的代码交互。

于 2012-06-20T16:30:19.013 回答