前阵子微信小程序的推出快速占据了Android桌面,手机厂商们坐不住了,为了抢回移动端应用分发入口,前几天中国通讯院等协会联合小米、华为、OPPO等一众手机厂商共同发布了“快应用”。
废话不说,先甩两个网址:css
文档是最权威的,建议你们在看完此文章后也去看看文档,在这里我给你们演示一个。html
此文章适合不熟悉Android开发的前端工程师和不熟悉前端开发的Android工程师阅读。前端
v6.11.3 LTS
,另外,快应用官方提醒:不要使用8.0.*版本.这个版本内部ZipStream实现与node-archive包不兼容,会引发报错
,我电脑里原本就有8.9的版本,懒得安装低版本了,跑流程应该是没问题的。npm install -g hap-toolkit
(PS:我用windows,用cmd执行,Mac用本身的命令行执行工具就能够啦)hap -V
,能看到版本号就说明hap-toolkit安装成功了。例如testhap
,我用的是windows平台,因此就用cmd打开啦,Mac不用cmd差异应该也不大。vue
输入命令hap init <ProjectName>
必须输入项目名(差评:人家npm init 能够使用当前目录的),而后会提示Init your Project
,直接回车就能够啦。node
完成后长这样:webpack
目录结构说明(截图内容来自官方文档):web
切换到项目根目录,我是testPro
,执行命令npm install
,等待安装完便可,若是实在太慢能够使用国内镜像cnpm试试,具体本身去网上找找教程吧。chrome
安装好的依赖都在node_modules
目录下,通常不须要咱们去管。npm
根目录执行命令npm run build
生成rpk包,这里可能会报错,例如 Cannot find module '.../webpack.config.js'
,遇到了执行命令hap update --force
便可,而后从新执行npm run build
。json
完成后会生产两个目录build、dist
。
这是用来作调试的,是apk文件,即Android安装文件。
必须两个都安装了,否则一个是按钮不能点击,一个是白板一片。
有两种方式:
这里采用“HTTP请求”:
npm run server -- --port 502
npm run server
会使用默认端口12306(好眼熟的样子),至于我为何用502,不告诉你哈哈哈~配置HTTP服务器地址
打开调试器(刚才安装在手机的那个软件) ,而后:(二选一)
在线更新
按钮便可,若提示安装失败,请检查执行npm run server
的终端窗口是否正常运行。(在线更新
按钮多点几回吧,可能会延迟)开始调试
按钮,则可打开chrome devtools调试界面,详见文档调试工具介绍,前端er应该不陌生。到这里基本就算完了,详细的开发指南看这里。
如今咱们来看看这个“快应用”是什么鬼,这里只是简单浏览一下,未做深刻分析,可能有误。
根目录
结构:disk、node_modules、以及package等等,不就是常见的前端项目文件夹和文件吗,至于build和src,前端和Android都很熟悉。
build
目录里面看看:
这里是打包时生成的一些临时文件,js和map(源码映射文件)。manifest
是什么呢,作Android开发的小伙伴都认识,清单文件啊这是,只是Android的是XML文件,这里的是JSON文件。
JSON文件
里面:包名、应用名、版本号、版本名、最低支持平台、应用图标都齐了。
页面路由配置,有点像Vue,又不像,里面指定组件。
一些基本的页面配置,看起来像微信小程序的json配置文件,又不太像。
总的来讲,这个manifest.json
文件就是Vue、微信小程序、Android清单文件的混合体,用来描述应用和作一些基本配置。
dist
目录:打包后的输出目录,里面有一个rpk文件,嗯,Android打包后是apk文件,好暧昧的扩展名╮(╯▽╰)╭
node_modules
目录:这里都是npm安装后的依赖,相似于Android开发的jar包,里面的东西出了名的多,光刚才建立个基本项目就有700+的文件夹。
sign
目录:src
目录:
跟build
目录差很少,基本就是按src
结构复制一份过去build
。固然,这里的是ux文件
,编译打包时会把src
里面的ux文件
抽取出来生成js文件
,不知道可不能够分别抽取为js、css、html呢,没试过哈
ux文件
里的内容:总的来讲,我的目测,这个“快应用”就是借鉴了Android、Vue、微信小程序的综合体,至于有没有借鉴其余的框架什么的,做者见识有限,不清楚哈。
若是你还想了解更多,去看官方文档哈,里面才是最权威的。