Unity中导出apk文件

Posted 润火

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity中导出apk文件相关的知识,希望对你有一定的参考价值。

文章目录


一、JDK下载与配置

在打包apk文件之前,需要做几步工作。第一个是下载和安装JDK。

JDK下载

下载链接:https://www.oracle.com/java/technologies/downloads/#java8(官网)
官网提供压缩包下载和安装程序下载,压缩包下载后解压即可使用。
注:下载jdk1.8,防止jdk版本过高导致打包时报错。

配置环境变量

win11系统环境变量配置如下:
设置系统系统信息高级系统设置,·打开系统属性,然后点击环境变量,在系统变量中新建一个变量,名为JAVA_HOME,路径为jdk解压后的位置(或安装之后的位置),注意,不用精确到bin文件夹,如图:

然后找到系统变量中的Path变量,点击打开,然后新建的一个变量,值为 %JAVA_HOME%\\bin,然后一直点击确定。最后打开cmd窗口,输入java -version,如果出现下面图片的内容,说明配置成功。

二、android SDK下载

Android SDK的配置有两种方法,以下为两种方法的具体操作。

一、通过Android Studio下载

安装Android Studio
请在 Configure > SDK Manager 中,确认您的Android SDK版本和Android SDK Tools版本。不同版本的unity支持sdk的最低版本不同,先看清楚在下载。



最后点击ok就行了。

二、直接下载Android SDK

下载Android SDK(Software Development Kit)
Google Android的官网上下载(http://developer.android.com/sdk/index.html),好像要翻墙,为了节省时间,可以选择这个的网址:https://www.androiddevtools.cn/

选择一个最新的版本就行了。注意,这里有exe和zip两种文件可供下载,exe的就是个安装程序,下载下来需要自己双击安装。这里建议下载zip压缩包,下载后,直接解压缩到你想要安装Android的路径就行了。解压后的文件目录如下:

双击“SDK Manager.exe”,会打开一个页面:

有几个必须要安装的,如上图所示的,Tools文件夹里面的Android SDK Tools(这个我们在之前的一步已经下载好了的,一般不会让你再安装了,不过有可能会让你更新),然后就是Android SDK Platform-toolsAndroid SDKBuild-tools,注意只需要下载最新的版本就行了。只需要安装前面三个就行。

然后就是API的选择了。这里提供了Android 2.2到Android 5.x的很多版本的API,新手直接选一个最新的就算了,因为Android是向下兼容的。其他的以后你要用到了在下载就行了(因为下载安装的速度实在太慢)
如果你选择其他,比如我选择的是8.0,那你要把默认选择的那个最新的勾掉
这里需要说明的是,如果你以后不打算用模拟器调试,而是一直用真机来调试的话,那么就可以不用装“system images“了。不过新手的话,不知道怎么选择,还是建议直接全部勾上吧。

最后就是extras文件夹中的东西了。理论上来说,extras中的东西如果网速允许,时间充沛的话,就都下载了吧,应为都是好东西。不过一开始安装的话,可以只用安装上图中的三个,即Android Support RepositoryAndroid SupportLibraryGoogle USB Driver


点了ok后,一般情况下是下载成功的,如果发现有些包下载失败,如下图:

这种时候,我们可以通过有Android SDK的国内镜像服务器来下载安装,这里推荐几个:

1、中科院开源协会镜像站地址:IPV4/IPV6 : http://mirrors.opencas.ac.cn 端口:80
2、北京化工大学镜像服务器地址:IPv4: http://ubuntu.buct.edu.cn/ 端口:80
IPv4: http://ubuntu.buct.cn/ 端口:80
IPv6: http://ubuntu.buct6.edu.cn/ 端口:80
3、大连东软信息学院镜像服务器地址:http://mirrors.neusoft.edu.cn 端口:80

注:镜像粘贴的时候不要带http://
我选择的是第三个站点,即大连东软的镜像,使用方法如下:


再次点击安装,发现这两个图片还是没安装上,这样的话那就算了吧。

三、导出APK文件

安装好unity并打开,点击Edit->Preferences->External Tools,选择你安装的Android SDK和安装JDK的路径,当然可以使用unity自带的JDK,其中Android SDK的路径精确到SDK Manager所在的文件处。如图所示:

设置好路径后,点击File->Build Settings,切换平台至Android,点击Open Download Page,下载并安装Android模块,最好将该模块下载至unity所在的路径,然后重新启动unity。点击File->Build Settings->Switch Platform,然后点击Player Settings

填上Company NameProduct NameVersion。在 Resolution and Presentation -> Default Orientation 中,选择 LandscapeLeft 。并且在XR Settings中取消勾选Virtual Reality Supported,移动端不需要勾选该选项。最后,在Other Settings中,找到Minimun API Level,将该选项选择为你所下载API版本或者低于你所下载的版本,然后将Target API Level中的API版本改成你所下载的版本。最后在Bundle Identifier处以com.Company.ProductName的形式填上,并且与之前的Company NameProduct Name保持一致,不然会报错。
注意:如果你的项目引入第三方的插件,即有Androidmanifest文件,Bundle Identifier必须写进该文件,此外Minimun API Level和Target API Level也要写入该清单中。

最后点击Build,就可以生成apk文件了。
注:如果出现下面的情况

点击Use Highest Installed就行了,如果还是失败,那么去下载更高版本的Android SDK。

四、注意事项

如果打包的过程中抱错,提示jdk版本过高,可以使用unity自带的JDK。

Unity中安卓APP安装OBB分包(基础APK+OBB)

1、首先在Unity打好分包,出分包的方法如下图所示

准备好分包打包的Android安装包(apk+obb),比如说是:ABC.apk + ABC.obb

 

2、先把apk安装到Android设备,然后将对应obb文件改名为:

main.<Bundle Version Code>.<包名>.obb

并拷贝到Android设备的“/android/obb/<包名>/ ”路径下。

如在Unity3D编辑其中,你可以在工程设置的如图位置处,看到“Bundle Version Code”和包名(即“Bundle Identifier”).

以上面的ABC为例(假设其“Bundle Version Code”值为2,包名为“com.Demo.ABC”):

- 首先,在Android设备上安装ABC.apk;- 接着,将ABC.obb改名为“main.2.com.Demo.ABC.obb”;

- 然后,将文件“main.2.com.Demo.ABC.obb”拷贝到Android设备的“/android/obb/com. Demo.ABC/”路径下;

- 启动App,你会发现新安装的APP已经可以正常使用了。

 

就这么简单 

以上是关于Unity中导出apk文件的主要内容,如果未能解决你的问题,请参考以下文章

unity shader打AB,出APK工程的shader丢失问题

unity 3d怎样在相机中导出rendertexture

Unity3DAndroid 打包 ④ ( Android 工程打包 | Unity 中导出安卓工程 | Android Studio 打开 Unity 导出的 Android 工程 )

用Ant给Unity3D导出Eclipse工程打包APK

Unity中安卓APP安装OBB分包(基础APK+OBB)

如何将unity模型导入android程序中