熊宝儿歌物语快应用熊宝儿歌物语基于快应用技术开发,现已上线小程序版。网上关于快应用的资料非常少。我也是因公司需要而发展的。一路走来踩过无数坑,综合了友盟的统计。我完全遵循官方项目。今天我想分享一些我的经验,让大家可以避免。少走弯路,如有错误和意见,欢迎大家共同进步。在线开源地址https://github.com/lishuaixin...点赞!快应用开发文档中的以下接口均由产品公司自行提供,本人均从网上获取。获取和分享的行为可能涉嫌侵犯产品权益。如果我被告知停止分享和使用,我会及时删除这个页面和整个项目。请了解相关情况并遵守产品协议。为了方便大家的学习和测试,也为了保证原公司的利益,本项目使用easy-mock来模拟后台数据。项目介绍熊宝童谣故事基于快应用技术开发,分为音乐、视频、育儿信息流三大模块。音乐模块比较复杂,包含了一套完整的音乐播放逻辑,而且快应用的坑比较多,实现起来比较困难。大,其他模块以信息流的形式呈现,包括常见的上拉刷新和下拉加载逻辑。目录结构├──signrpk包签名模块│└──debug调试环境│├──certificate.pem证书文件│└──private.pem私钥文件├──src├──api请求接口│├───常用公共资源和组件文件│├──components组件文件│├──pages页面目录│|└──index.ux页面文件,页面名称可自定义│├──app.uxAPP文件,可导入公共脚本,暴露公共数据和方法等│└──manifest.json项目配置文件,配置应用程序图标,页面路由等└──package.json定义项目项目安装所需的各种模块和配置信息gitclonegit@github.com:lishuaixingNewBee/babySongQuickapp.gitnpminstall打开两个终端窗口,分别执行:npmrunwatchnpmrunserver如果开发者遇到报错Cannotfindmodule'.../node_modules/hap-tools/webpack.config.js',请执行hapupdate--force编译打包。特别说明:如需发布到应用市场,需签名为安卓应用。npmrunbuild编译项目目录在/build生成的应用路径在/dist/将releasesignature添加到.rpk1.创建私钥:通过openssl命令等工具生成签名文件private.pem和certificate.pem,例如如:opensslreq-newkeyrsa:2048-nodes-keyoutprivate.pem-x509-days3650-outccertificate.pem(密钥长度,如果1024不够安全,可以使用2048,但是成本会相应增加)在项目的sign目录下创建一个release目录,复制私钥文件private.pem和证书文件certificate.pemintoCountryName(2lettercode)[XX]:CN#CountryCode(China)StateorProvinceName(fullname)[]:BeiJing#Province(Beijing)LocalityName(eg,city)[默认城市]:BeiJing#市(北京)OrganizationName(eg,company)[DefaultCompanyLtd]:tact#CompanynameOrganizationalUnitName(eg,section)[]:#可以不填CommonName(eg,yournameoryourserver'shostname))[]:#EmailAddress[]:Val.china@foxmail.com#MailboxPleaseenterthefollowing'extra'attributestobesendwithyourcertificaterequestAchallengepassword[]:#CannotfillinAnoptionalcompanyname[]:#项目可以不填在sign目录下创建release目录,将私钥文件private.pem和证书文件crtificate.pem复制到release包中。发布包前需要添加release签名,然后在项目根目录运行npmrunrelease生成应用路径为/dist/.signed.rpk如果需要临时使用debug签名,可以使用npmrunrelease----debug注意:由于调试签名是公开的,所以安全性无法保证。不要使用调试签名对正式启动的应用程序进行签名。保存你的签名文件,开发中的常见问题,比如一些基础问题,组件传参我就不多说了,看文档就好了。我主要说说一些坑。关于style组件问题——快应用默认的flex布局,所以我们之前对float和position都没有很好的配合。-background-image不支持网络路径-不支持box-shadow属性(很多样式不支持),想实现就用backgroundimage实现-不支持webfont,据说可以稍后添加。-svg图片在华为应用平台存在兼容性问题。-华为应用平台存在动画兼容性问题,将在下个版本解决。-选项卡不能嵌套在选项卡中。如果您有这样的需求,请参考教程的第一部分。图层效果请使用stack-swiper不支持滑动方向改变。暂时使用
