接着搞uni项目配置:
新项目就新建一个,老项目直接跳过~
然后重点来了——得整一个keystore证书!没弄过的宝子看这里
1?? 打开你放证书的文件夹,右键→在此处打开终端(或cmd)
2?? 粘贴这行命令(记得改别名+有效期+文件名!):
`keytool -genkey -alias 我的app -keyalg RSA -keysize 2048 -validity 10000 -keystore myapp.keystore`
回车后一路回车+输密码(别忘了记!),搞定后继续输:
`keytool -list -v -keystore myapp.keystore`
抄下MD5/SHA1/SHA256,后面要用!
登录DCloud开发者中心→找到你的项目→点新增离线打包Key→填包名(不会找?HBuilderX顶部菜单栏:发行→原生App云打包→包名就显示在那儿!)→确认创建,拿到Android Key!
下一步:HBuilderX里点发行→原生App-本地打包→生成本地打包资源,等它跑完,复制弹出来的resources文件夹里所有东西,粘贴进你AS里的demo-AS项目根目录!
开干配置
① 把项目里原来的 `_UNI_A` 文件夹删了,换成刚复制的resources内容;
② 找到 `dcloud_control.xml`,把里面的 `appid` 换成你自己项目的;
③ 改应用名:`app/src/main/res/values/strings.xml` 里改 `XXX`;
④ 包名和离线打包Key:`dcloud_control.xml` 和 `AndroidManifest.xml` 里都搜着改一遍;
⑤ `app/build.gradle` 里改包名、versionName这些,`signingConfigs` 块先别动!咱有keystore,后面再配。
常见坑预警??:
? 点Build没看到Generate Signed Bundle/APK?→ 找到项目根目录下的 `gradle.properties`,加一行:`android.overridePathCheck=true`
? JDK和Gradle版本打架?→ File → Project Structure → 把JDK设成11(推荐),Gradle版本按提示选兼容的 → 再点 File → Sync Project with Gradle Files,等它自动下完依赖!
? 打包卡住报错一堆sun.nio.ch?→ 打开 `gradle.properties`,末尾加这行:
`org.gradle.jvmargs=--add-exports=java.base/sun.nio.ch=ALL-UNNAMED`
搞定收工!Clean一下,Rebuild,就可以正常打signed APK啦~(小声:真不行就重启AS,玄学但管用)
