This action will force synchronization from DCloud/H5P.Android, which will overwrite any changes that you have made since you forked the repository, and can not be recovered!!!
Synchronous operation will process in the background and will refresh the page when finishing processing. Please be patient.
重要:请使用HBuilderX2.3.6-20191020生成本地打包App资源,否则uni-app项目可能提示“运行环境版本和编译器版本不一致”,详情参考https://ask.dcloud.net.cn/article/35627
此次更新梳理了工程结构,现在开发者可以直接修改引擎中的代码,自主编译出新的引擎。
如果开发者要修改本工程源码,请注意“引擎”和“插件”的分界线。 “引擎”是对5+/uni-app规范的实现,修改引擎源码可以优化对规范的实现,但不是提供规范外的功能。规范外的功能,应该做成“插件”。如需公开,则放到插件市场。 比如扫码,5+/uni-app的规范已经存在,但开发者对扫码效率不满意,提供自己更好的实现,则可以改动本源码,重新Build引擎。 而如果是想新增一个ar功能,则应该做成插件,而不是加入到本工程中。即,开发者不能自主新增5+/uni-app的js API规范。
任何一个项目的源码,吃透整体都不是一件容易的事情。一般开发者有改动需求,也多集中在一些能力或SDK的实现上。 比如扫码、视频、地图、直播、摄像头、相册、蓝牙等,以及某些界面的文字。 只关注某些能力模块,吃透和修改会更加容易。
受精力所限,某些模块,比如DCloud定制过的weex源码,还未规整好,暂时以库的方式提供,未来会提供完整源码。不过这不影响开发者修改其他源码和编译工程。
将源码clone到本地,复制对应文件夹到所在项目的根目录,在setting.gradle中加入module配置,rebuild即可。以高德地图为例,将本工程clone到本地,复制map-amap到项目的根目录,打开setting.gradle,在最底部添加include "map-amap",重新运行即可,如需添加到主工程中,打开主工程的build.gradle文件,在dependencies节点中添加implementation project(path: ':map-amap')即可。
如果模块中不存在build.gradle文件,可以将文件夹中的目录直接拷贝到主项目中。例如xhr模块,可以将src下的文件夹拷贝到主项目的src下,如果存在其他文件夹(如libs),直接将文件夹下的内容拷贝到同名文件夹下即可。
参考HBuilder-SourceTool-as项目
clone HBuilder-SourceTool-as项目到本地,直接运行即可。如果运行uni-app时出现问题,可参考:https://ask.dcloud.net.cn/article/35139。
安卓打包配置参考:https://www.cnblogs.com/lsdb/p/9337342.html。
本工程大部分源码开源,使用者可以自主修改已公开的源码,编译新版本。 但注意:
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。