鸿蒙 HAP初探

2,894 阅读1分钟

继上一篇文章鸿蒙HelloWorld之后,我们这次来看对比一下,鸿蒙产物HAP文件和Android的APK文件的差异。如果还没搭建好开发环境,建议参考上一篇文章 鸿蒙HelloWorld .

按照DevEco-Studio模板,运行编译之后,会生成一个HAP文件:

我们将文件后缀改成.zip ,然后解压缩:

WO,不看不知道,一看吓一跳,我们看到了大家都熟悉的.APK文件。

接下来,我们反编译一下APK文件:

反编译过程就不在这里说了,大家可以自行百度。

打开AndroidManifest.xml 看下:

可以看到,系统帮我们自动生成并注册了一个 MainAbilityShellActivity,感觉就像之前做插件化的壳应用。

可以看到,这里的.APK文件,就是我们Android生成的APK文件。

然后我们通过AndroidStudio打开跟APK文件同级的class.dex 文件:

我们看到,这才是我的实际编写的代码。

最后总结一下:

虽然网上很多人说鸿蒙其实就是Android套了一层壳,虽然我们也确实在HAP文件里面看到了APK文件,但是我还是相信在鸿蒙上,华为还是做了很多改动,这么做只是为了兼容Android。后续还会接着为大家解析鸿蒙,未完待续。