帮你解决|为什么Unity导出一个APK会这么多坑?
当我第一次从Unity3d,打包APK,并成功安装到自己手机上的时候。 我觉得自己6得不行,
Unity真的很神奇。

我们在电脑上使用Unity,去开发安卓平台上的软件,是在做一件跨平台的事情,程序本身会出现BUG,软件更新不兼容、打包操作流程失误、环境配置不当,都会引起“花式报错”。
对于新手来说,配置系统环境,让你的Unity能够顺利导出第一个APK,是第一个挑战。网上的信息鱼龙混杂。我们的AR/VR教程,都离不开这一步。因此我专门录制一个教程,并提供完整的下载资料。

当然,如果看了这个视频就能解决所有问题的话,自然就不需要写这篇文章了。根据学习群的反馈,各种apk报错,解决的方法都会在这里列出。
或许不能解决所有问题,这篇文章会持续更新,不妨收藏一下,有需要时候,来查阅即可。

【请做空包测试】
这是一个简单粗暴的测试方法。按照我的视频,配置好环境之后。 直接走一遍流程,发布一个空的场景出来,去手机上运行。
如果这一步失败,按照已知的情况,请这样做:
使用我视频下方提供的SDK和JDK。如果你之前自己装过,请卸载。Unity需要的是1.8版本的JDK。
下载的SDK,直接解压到磁盘根目录。 不要自己重命名,甚至放到中文路径下。(真的好多人这么做。。)
回去再仔细看一下视频中,导出之前的设置,尤其是bundle ID的修改。(50%的提问都是因为这个,仔细看视频嘛老哥们)
和我一模一样的操作,一样的软件版本和环境。但就是报错,就像我今天遇到的群员。那么,我暂时的建议是装一个老版本的unity,或者借用一下身边其他电脑。 这个问题出现的概率较小,找到原因后,我会更新此条。
【排除程序上的BUG】
如果你的程序本身点击运行按钮,都会出现如下的错误无法运行。那肯定是导不出APK的。

对于新手来说,出现这种情况一般是发生在:
写了脚本,语法有错误,方法名有问题。保存之后无法通过编译,这时候检查对应的脚本就可以,unity下方的控制台会显示是哪个脚本,某某行有问题。
导入了插件/素材。 插件可能不兼容你的unity版本,此时下方也会报一堆错误。

【Unity2017 里面gradle,apk导出过程中卡住】

一般群里使用2017.x版本会遇到这个问题,只要把上图改为internal即可。
一般这个选项,在需要和android交互的应用时,才需要选择Gradle,可以导出Android studio工程进行进一步开发。那边坑就更多了,说多了全是泪。 我们选择internal即可。
【导出到一半,弹出level23 not match target 26这种】

以ARCORE为例,导出APK之前需要设置安卓最小等级为安卓7.0 但是在系统打包APK的时候,发现你本地只安装了安卓5.0的SDK。那他就会告诉你,你还要下载安装新版本的安卓,才可以继续打包。
使用我提供的SDK,已经包含了较新版本,不会出现上述错误。
出现这个窗口时候,可能会有download按钮,让unity帮你下载。 但是国内上网环境,很可能下载卡住。
了解安卓知识的同学,也可以进SDK包里面,启动管理工具进行下载。
SDK中可以包含多个版本,我提供的包含安卓8.0,即API26;在安卓9.0普及之前,是足够用的。
未完待续,先留个坑,欢迎进群提问,让我们一起完善。
【安装失败的原因汇总】
【应用闪退的原因】
谢谢你的阅读。你的关注和点赞就是我最好的鼓励,也希望你把我推荐给你的朋友。我的视频和文章永久免费!
如果您喜欢,请关注我,最近准备写的文章还有:
《第一次学AR,应该准备什么? 多久能出作品?》
《想做VR,我该去参加培训班么? 得花多少钱?》
《导出APK 的各种坑,以及常见的解决办法 》
《VR/AR 开发向-好的素材模型网站,能让你事半功倍》
作者:小意思VR
https://www.bilibili.com/read/cv1695509
出处: bilibili

