快速入门快应用——quickapp构建与发布

本文分享了快应用的开发经验,包括项目搭建、发布流程、遇到的问题及解决方案。在项目搭建中,遇到npm run build异常,通过hap update --force解决。发布时需注意从debug签名切换到正式签名。开发中遇到布局样式不适应,如flex布局、CSS样式支持等问题,以及组件和接口的限制,如list-item、swiper、tabs、slider和web组件的使用。同时提到了音频接口的不足以及$watch和$forceUpdate的使用注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本期作者:狗蛋404实验室

伴随着我司快应用审核通过、上线,此处应该有一篇快应用开发经验分享。我司开发的快应用刚好涉及到音频、视频、Feed流业务,下面分享一下我在开发中遇到的问题。

项目搭建

  hap init <project_name> // 生成一个快应用项目脚手架	
  cd project_name	
  npm install // 安装依赖	
  npm run build // 打包快应用,输出build和dist文件夹	
  npm run watch // 监测到变化后自动编译	
  npm run server // 在另起一个终端开启server

如果node版本用的是8以上的话,在运行完npm install后再运行npm run build时可能会报Cannot find module .../webpack.config.js异常,请重新执行一次hap update --force。

这是由于高版本的npm在npm install时,会校验并删除了node_modules下部分文件夹,导致报错。而hap update --force会重新复制hap-toolkit文件夹到node_modules。

项目发布

由于我们在开发环境下是用的debug签名,而正式发布到应用市场是需要正式签名。

创建私钥:

通过openssl命令等工具生成签名文件private.pem、certificate.pem,例如:

openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 3650 -out certificate.pem

(关于密钥长度,1024觉得不够安全的话可以用2048,但是代价也相应增大)


	
Country Name (2 letter code) [XX]:CN   #国家代码(中国)	
State or Province Name (full name) []:BeiJing   #省(北京)	
Locality Name (eg, city) [Default City]:BeiJing   #市(北京)	
Organization Name (eg, company) [Default Company Ltd]:gdlb  #公司名称	
Organizational Unit Name (eg, section) []:   #可不填	
Common Name (eg, your name or your server's hostname) []: #可不填	
Email Address []: #邮箱	
Please enter the following 'extra' attributes	
to be sent with your certificate request	
A challenge password []:   #可不填	
An optional company name []:   #可不填

在工程的sign目录下创建release目录,将私钥文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值