Hi3518鸿蒙增加自定义应用 原创 精华
文中相关设备来源于51CTO 鸿蒙技术社区【开发板漂流计划】
之前两篇Hi3518鸿蒙运行没有shell问题和Hi3518鸿蒙2.0源码hb编译过程 ,遇到了hpm编译出来的固件没有shell,后台采用hb编译才可以,后来发现是有一个宏定义LOSCFG_SHELL控制的,把这个打开就可以支持,但是找了半天hpm的代码和全量2.0的代码,也没找到怎么打开,也没有找到hpm命令怎么打开这个宏,后来搜素发现用到LOSCFG_SHELL的地方有几十处之多
自己修改了几次几处,中途遇到不止一次崩溃,整的我都有点崩溃了,后来发现hpm的代码也是可以直接运行hb编译命令的
这样编译出来的就带有shell了,task命令用于查看系统的进程与线程,如下:
上图显示的是lietos-a鸿蒙系统默认启动的进程和线程,liteos-a是支持进程和线程的,而且支持应用程序的动态加载。
init是1号进程,由他孵化的进程包括shell,apphilogcat,appspwwn,KProcess是内核线程,
由于我们正在运行shell命令,所以shell属于running状态,下边显示的是每个进程所包含的线程,
其中shell进程包括shell,shellTask和shellEntry三个线程。
上一篇hi3518 openharmony shell命令代码修改所说的修改shell就是修改的shell进程相关的代码。
进行下一步工作,增加一个自己的测试应用程序,网上看了一点帖子,但是按照步骤找不到指定的文件,比如下边这个文件就没有
后来去官网查看运行Hello OHOS(编译、烧录),按照这个方法把自己添加的应用程序运行起来了。
要是自己增加应用需要修改三个文件,首先是文件applications/sample/camera/apps/BUILD.gn,这个文件是定义新增应用编译的代码和目标程序的名称,
然后是build/lite/components/applications.json,这个文件可以叫做整体应用的配置文件,这里边要定义我们新增应用的组件名称,
最后是 vendor/hisilicon/hispark_aries/config.json,这个文件叫单板配置文件,主要是控制把应用子系统和应用子系统的模块编译进整个固件。
我很奇怪网上的帖子为啥说的不对,后来想到了应该是版本的问题,于是查了一下早期的1.0版本代码确实是存在这些文件的
看来写帖子也得注名版本号,要不然很耽误事,还有就是要去官网看第一手资料又查了下1.1版本发现和现在的2.0,3.0版本一样了。