记一次BUG与DEBUG衍生的若干问题

Posted TPMer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次BUG与DEBUG衍生的若干问题相关的知识,希望对你有一定的参考价值。

记一次BUG与DEBUG衍生的若干问题

前两天用Unity做一个AR软件测试,因为电脑上没有摄像头,所以就想打包成APK,然后到手机上测试的。
这个APP 的功能就是打开摄像头,
对着一张特定的图片,例如这张

1

然后图片上会出现一个立方体,效果差不多这样。

2

然后就开干了,前面都很顺利,很快就完成了,但是到了打包成APK 这步以后就出了问题。
首先是可以打包,但发布出来的APP打开以后就秒退,然后我就去群里问大神了……

可能是我问的问题比较傻逼,而且遇到的大神也不太愿搭理我,给了我这样一个答案

3

然后人家就没搭理我了,然后我就自己琢磨是不是SDK的原因,因为android SDK要翻墙下载,速度又慢,所以从百度某个论坛上随便找了个下来,可能是非官方的问题。于是决定从官网下载,然后我点了后面的Download
4

弹出来个这个网页

5

这特么什么鬼,我要的是AndroidSDK 给我这个开发工具干嘛,然后我翻了看了一下,它说这个开发工具里面集成了SDK ,好嘛,那我就下载,1.2G ,下了好一会,下完了,然后安装,一直next-next的点。完成了,然后又把环境变量设置了一下。
兴冲冲的打开unty打包测试一下,结果又特喵的秒退。我擦!深吸了一口气,心想可能是SDK没装全,于是打开SDK Manager 把没装的一狠心全选上来个install(PS:这玩意要翻墙下载,所以特别慢),然后就是漫长的等待了。
N久以后…… 全部installed 了,我长吁了一口气,心想这下不会出问题了吧!

6

默默的查了下属性,我勒个去66.4G,特么的这么大!

7

然后又是一通build, 结果,Duang~ 的一下,弹出了个窗口,没错,报错了!

8

莫慌,让我先看下报错信息

9

卧槽,这么长的一堆是个什么鬼!赶紧跑群里去问大神,前后问了三四次,都没人鸟我。

10

宝宝心里苦啊!

于是乎,复制,百度

CommandInvokationFailure: Failed to re-package resources. See the Console for details.
D:\\Android\\Sdk\\build-tools\\24.0.0-preview\\aapt.exe package --auto-add-overlay -v -f -m -J gen -M AndroidManifest.xml -S "res" -I "D:/Android/Sdk\\platforms\\android-23\\android.jar" -F bin/resources.ap_ --extra-packages com.TomatoJoy.ToTen -S "C:\\Users\\TPMer\\Desktop\\ten_gaoheng\\Temp\\StagingArea\\android-libraries\\unity-android-resources\\res"

答案到是不少,但是不知道能不能解决,一个一个看吧。

11

不看还好,越看越一头雾水,一个说的比一个玄乎,可能大家遇到的问题不一样吧,只是看起来比较像 而已。从博客、论坛辗转到贴吧,都看了下,贴吧里几个楼主遇到的问题跟我这个好像,错误信息也好像,我看下面回复的,也有解决方法,这里只列出其中一个方法

12

心想这不是android的知识吗,不太会啊,不过照葫芦画瓢谁还不会,照楼主说的修改AndroidManifest.xml 文件里面的内容就好了,关键是这个文件在哪呢,记得几年前看过一点安卓开发的视频,可毕竟都是几年前,谁还记得了,于是我就搜索,还好找到了,不过一看怎么在Temp 文件夹下,大家都知道Temp是临时文件的意思,我心里就犯嘀咕了,临时文件里的修改有用嘛……(PS:后来我也贴吧回复了楼主问了他这个问题解决了没,无奈贴吧沟通起来太慢,至今楼主还没回复我。
13

14

卧槽,又是一堆英文,心中一万只草泥马奔腾而过,不管了,改了再说!
15

仔细找了下发现

**android:theme="@android:style/Theme.NoTitleBar"**

这句都没有啊,
16
机智的我想,没有那我给你加上吧!
于是就在他们前面加上了那句

android:theme="@android:style/Theme.NoTitleBar"

android:icon="@drawable/app_icon"

android:label="@string/app_name"

然后保存,我真特码机智

17

迫不及待的再次build 一下,盯着进度眼都不敢眨一下,大概到了五分之四的地方哔~~~~
18

我草泥马!我草泥马!我草泥马!
还是那个错误!我草泥马!

呆坐了一会……(内心戏:艹,什么玩意,这么难,不搞了!怎么能遇到这点问题就放弃呢!好烦,先打把游戏在说吧,俗话说,一撸解千愁!嗯!好主意,这玩意先放着,先撸!)
于是乎关了软件,打开游戏,酣战到深夜…………

就这样过了几天,但那个错误就像心里长了个疙瘩,解不开很操蛋!

几日后,一个灵光闪过,上google看看吧,国外的大神多

19

又是一堆……脑瓜疼!

这是官方论坛,看来这个问题也有很多人遇到啊!

20

这是最佳答案,全E文,看着头疼,脑仁疼,但没办法。看呗!


经过我一番深入的研究发现,这个错误就是打包的时候某个资源重复了什么的XXXXXX问题,想要解决就得修改某个文件,最好是对安卓开发有些了解,对unity打包机制有些了解,它们之间怎么互相工作的要明白!说白了就是我现在还是个菜鸡,这些都还不懂,书到用时方恨少啊!想当初早知道就把安卓开发学好了!白瞎了当初的满腔热血下了那么多教程,现在都落了好几层灰了吧!

都是12年的教程了,现在16年了,卧槽!4年了!4年前如果我好好学的话,现在肯定是个大神了!宝宝心里悔啊!!25

咳咳咳,扯远了,继续讨论那个报错。

以前用别的电脑也是这样的操作的也没有报错啊,为什么这次就报错了呢。于是决定从头梳理一遍,按照教程重新设置一遍。

先是JDK SDK的安装,然后环境变量的设置,一步一步走下去,然后Unity的设置,然后Build,然后……Duang~ 的一下编译成功了!卧槽!卧槽!卧槽!成功了!好激动!果然皇天不负有心人,迫不及待的装到手机上试一下!

传输,安装,安装成功,都很顺利!
当我打开那个APP 的一瞬间,啪的一下又返回主界面了,我又点了一次,还是返回主界面。艹!又是秒退!!艹!艹!艹!感觉不会再爱了!

30

然后又去各群问了一遍……


得到的答案都差不多,

外面正下着暴雨,算了,先放着吧。先撸一把再说,一撸解千愁嘛!又是一场酣战……

本来我以为,这个问题只有等我学好android开发以后才会有个清晰的认识,才能解决。但今天抱着侥幸的心理又在群里问了一遍,今天好像群里的小伙伴都好像没什么事,热心的给我解答,其中有个人让我把APK发给他看看

35

然后我就发给他了,很快的就有回复了

报错信息如下:

然后我突然意识到是版本问题。因为一开始安装unity时候回让用户选择相应平台编译支持的,一开始的时候我没选择 android build support(PS此时我用的是5.3.4f版本的)

但后来为了打包安卓,所以必须装上面的 support,但那个安装文件找不到了,于是我就从官网上下了个补丁,打算只安装 android build support

问题就出在了这!我下的是 5.3.5f 版本的,所以两个不兼容,所以打包会失败。心理豁然开朗!!找到问题所在了,就好解决了,从官网下了个相对应版本的补丁重新安装一下就好了!

40

然后打包!没问题。
传送-安装-安装成功-打开!欧克!都没问题
运行的效果就是这样的

这一刻,春哥附体!!

困扰我多时的问题终于解决了!!!

就像他们说的那样,是自己当时脑抽了!哈哈哈!

Done.

遇到问题得解决,解决了还不算完,还得总结。
下面就来聊聊这个总结的部分。
首先,这个问题出现是自己脑抽了,当初如果安装Unity的时候一起选上了Android Build Support 的话也不会出现这个问题;
再退一步说,就算当初没勾上这个,遇到了这个问题,前面我的那些弯路都走过了的话,下一步我就准备重新安装unity了,这样一样可以解决,但是全部重新安装的话虽然解决了但还是不知道问题到底具体出在了哪;
再者说,遇到了这个问题,自己也想办法解决,通过问人,网上找资料。其实大家一开始都给出了答案:查看log日志找出问题出在哪。
可由于自己能力不够,不会查,这才是硬伤,45……

所以不能知其然,还要知其所以然!通过百度,谷歌,论坛,群等等一系列手段了解了一下怎么查log文件,调试和监控某个APP,其中又有一大堆的懵逼!具体过程也不细说了,看下浏览记录

总算有个大概的了解,也只是个大概的

47

最后一句话:
路漫漫其修远兮,吾将上下而求索!
与君共勉!

以上是关于记一次BUG与DEBUG衍生的若干问题的主要内容,如果未能解决你的问题,请参考以下文章

记一次BUG与DEBUG衍生的若干问题

[debug]记一次竞态更新bug的解决

springcloud 请求超时,记一次bug

记一次解决layui 的bug - layer.open 与 layui渲染问题

记一次惨痛的线上bug

记一次生产的bug