一 为什么要自定义基座
1,基座其实就是一个app,然后新开发的页面可以直接在手机上面显示,查看效果。
2,默认的基座就是uniapp帮我们打包好的基座app,然后我们可以进行页面的调试。
3,自定义基座主要用来实现原生插件的调用的,自定义基座可以实现使用HBuilder/HBuilderX开发应用时,可在手机/模拟器上查看运行效果
二 怎样自定义基座
2.1 确保离线打包appkey配置正确:上一篇已经演示了怎样生成appkey,和配置原生android项目的appkey,android项目app的AndroidManifest.xml里面增加appkey节点
<meta-data
android:name="dcloud_appkey"
android:value="开发者需登录https://dev.dcloud.net.cn/申请签名" />
2.2 配置debug="true"和syncDebug="true":android项目app的assets里面找到dcloud_control.xml,添加调试配置
2.3 添加debug-server-release.aar:复制离线uni-sdk里面的aar,到android项目的libs里面就可以了
2.4 修改build.gradle的versionCode和versionName:这一步非常重要,也是新手容易忽略的
2.5 打包android_debug.apk:有配置改动最好先clear一样项目,Build-Clean Project
在AndroidStudio的栏目点击运行按钮,运行起来后就可以在build编译文件里面找到android_debug.apk
2.6 把android_debug.apk包做为自定义基座进行调试:拷贝该apk到uni项目的unpackage-debug目录下面
三 uni自定义基座调试
3.1 栏目点击运行-手机或者模拟器-androidapp基座,新老编辑器可能会有所不同
3.2 这个时候提示为找到自定义基座,这是因为名字不对,我们需要把刚才的apk名字改为android_debug.apk
3.3 这个时候在运行就能找到自定义基座了
3.5 控制台显示自定义基座安装成功,这样就能在uni控制台和androidStudio控制台同时打印日志信息了
3.6 但运行后崩溃,提示 同步资源失败
3.7 查到离线SDK打包自定义基座可能需要两个依赖,那就在android项目中加上,重新编译生成debug包
implementation 'com.squareup.okhttp3:okhttp:4.9.0'
implementation 'com.squareup.okio:okio:2.9.0'
3.8 再次运行自定义基座,这次同步文件成功了,可以正常运行
四 当然也可以用uni直接制作android_debug.apk基座
4.1 选择运行到手机或者模拟器-制作自定义调试基座
4.2 配置之前生成的证书,进行传统打包
4.3 等待控制台制作android_debug.apk成功后,就可以使用该基座了
4.4 控制台出现同步手机端文件完成就表示成功了
五 总结
自定义基座其实就是运行原生app的环境,基座就是android_debug.apk,生成apk复制到uni的debug目录里面就可以了