标准基座
使用HBuilder/HBuilderX开发应用时,可在手机/模拟器上查看运行效果。此功能会在手机/模拟器上安装“HBuilder”应用(或者叫HBuilder标准运行基座),在应用开发过程中HBuilder/HBuilderX会将应用资源实时同步到基座并刷新,从而实时查看到修改效果。
上述HBuilder标准运行基座,是由DCloud提前打包好的,使用的是DCloud申请的第三方SDK配置,manifest里大多数设置都无法动态生效,需要再次打包才可以生效,但是不能调试。
例如微信分享,不管开发者在manifest里如何配置,使用HBuilder标准运行基座分享后显示的来源一定是“HBuilder”。
自定义基座
开发者真实打包后的手机应用又无法通过运行方式来调试,这导致涉及manifest配置的内容调测变的很困难。
如果要自定义原生层,则需要走一遍iOS或Android的打包流程,由XCode或Android studio编译打包生成ipa或apk安装包。
为了解决manifest配置相关调试的便利性问题,DCloud提供了制作自定义运行基座的功能,也就是开发者可类似DCloud一样,自己做一个运行基座,里面使用的是自定义的manifest配置。
开发者打包了自定义运行基座,就可以把这个基座运行到手机/Android模拟器上,进行日志查看。
自定义运行基座配置(主要是manifest.json的配置),包括:
- App名称、图标、封面splash、包名、证书
- App模块配置、三方sdk配置(如微信、推送、地图、语音识别等三方sdk配置)
- App权限配置
- uni原生插件
- 其他manifest.json文档提到的需打包生效的配置
打包自定义运行基座后,HBuilder会自动将生成后的apk和ipa包存放在 项目目录/unpackage/debug目录下,文件名分别为android_debug.apk
和iOS_debug.ipa
。
一个项目只能生成一个自定义基座,多次生成只保留最后一次结果。
云打包生成自定义运行基座
1.HBuilder中,点击发行->原生app-云打包
生成自定义基座后,就可以在HBuilder中进行真机调试
缺点就是需要排队
打包成功后会出现提示信息:
2.在HBuilder中,点击运行->运行到手机或模拟器->运行到Android自定义基座
3.在设备选择窗口,可以选择自定义基座后,点击“运行”
注意:自定义运行基座是测试版,不可直接商用(使用自定义运行基座覆盖安装apk不会更新应用资源,并且有toast警告)。正式发版时需要按正常打包方式重新打包。
离线打包生成自定义运行基座
可使用离线SDK打包生成自定义运行基座(不支持cli方式,将src拖拽到编辑器中,并重新识别项目类型),生成后将apk和ipa包存放在项目目录/unpackage/debug目录下,文件名分别为android_debug.apk和iOS_debug.ipa。
1.Android端:debug 配置
1)assets/xx/www/dcloud_error.html
apps节点添加debug=”true”和syncDebug=”true”
2)添加debug-server-release.aar依赖库(请在离线SDK中查找此依赖库)。
在build.gradle中添加okhttp3的依赖
dependencies {
implementation "com.alibaba:fastjson:1.1.46.android"
}
2.Android端:生成apk文件
1)在android studio中,生成APK文件。点击“Build”->“Build Bundle(s)/APK(s)”->“Build APK(s)”。
打好apk包备用,等下要放到HBuilder项目中去。
2)点击右侧Gradle侧边栏,点击需要打包的module -> Tasks -> build -> assembleDebug/assembleRelease
3)APK文件生成路径见下图(build文件夹只有在project视图下可见)。
3.HBuilderX端:复制APK文件到HBuilderX中
1)在HBuilderX项目中创建unpackage目录,在unpackage目录中创建debug目录,将上述生成的APK文件拷贝到debug目录中。
2)重命名文件为android_debug.apk
4.运行自定义基座
1)将运行基座选为自定义基座
2)点击运行,直接运行到手机即可。