112-2024-07-14周总结

  1. google play打不出包

1. google play打不出包

这周google play分支的包就是打不出来,报了下面的错误:

1
2
3
4
5
6
7
8
b'* What went wrong:\n'
b"Execution failed for task ':launcher:processReleaseResources'.\n"
b'> A failure occurred while executing com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask$TaskAction\n'
b' > AAPT2 aapt2-4.2.1-7147631-linux Daemon #0: Unexpected error during link, attempting to stop daemon.\n'
b' This should not happen under normal circumstances, please file an issue if it does.\n'
b'\n'
b'* Try:\n'
b'Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.\n'

这个信息很少,因为我们打包都是unity直接在打包机上一键打出包的,所以一开始想修改代码让打包机先打出as工程,下载到本地自己编译看看。结果下载下来之后路走歪了,给出的报错是firebase sdk有问题,然后就一阵折腾,升级firebase,对比自己的sdk接入过程啥的,发现并没有卵用。

最后走了比较蠢的办法,一步步删除sdk,测试到底是哪个sdk有问题,最后定位到是facebook问题,只要项目里面接入了facebook就打不出包。确认了之后,还是一样先尝试升级Facebook SDK,发现问题还再,然后就卡住了,因为是要在facebook上面投放的,所以facebook sdk肯定是需要的。

然后又回到了最初报错上面,想根据报错看看为啥facebook不行,问了下ChatGPT,发现可以在Unity的mainTemplate.gradle最后面加这些设置可以打包的时候给出相信gradle信息:

1
2
3
// 设置日志级别和堆栈跟踪
gradle.startParameter.showStacktrace = ShowStacktrace.ALWAYS
gradle.startParameter.logLevel = LogLevel.INFO // 可以设置为 LogLevel.DEBUG

翻看详细信息找到了关键错误:

1
2
'Caused by: java.io.IOException: AAPT2 process unexpectedly exit. Error output:\n'
"aapt2 W 07-15 10:08:44 1119730 1119730 LoadedArsc.cpp:682] Unknown chunk type '200'.\n"

通过这个信息找到了原因和解决方案

原来罪魁祸首是最近该的target sdk从33升级到34,要彻底解决需要升级gradle版本,先暂时回退到33解决了该问题,折腾了一周了。

其他

煎熬的一周,工作上被打不出包卡着,家里两只神兽先后得了疱症性咽峡炎,大的周二中午开始发烧,晚上高烧到了41,退烧药也只能到39,还连续吐了几次,半夜送去医院,医院也只是配了点药,让回家观察,好在第二天就稳定了下来。小的周五早上开始发烧,中午烧起来的时候高热惊厥了,送往医院做了检查,挂了盐水,由于传染病,需要单人房间,没有床位,只能回家等排队入院。晚上的时候又一次高热惊厥,再一次去了医院,在急诊病床上呆了一晚上,期间又烧到40度,医生给挂了激素,好在激素效果比较好,稳定了下来。周六下午轮到了床位,安排了入院,因为喉咙有疱症,再加上这两天又是抽血,又是打针的,又难受有怕,周六整整哭了一整天,都没怎么吃东西。周日情况慢慢好起来了,疱症应该好点了,食欲也变好了,终于快要熬过去了。