先说下自己的开发环境
Win7 x64
Unity5.2.2
Android Studio 2.3.2(以下简称AS)
JDK1.7
再说下创建项目
在AS中创建一个新项目
用empty activity
将Unity中的classes.jar考到项目下libs文件夹下,并右键->Add as Library
里面各种修改,最后要Build APK,发布出app-debug.aar文件
用解压程序打开此aar文件
删除其中的libs文件夹
将此文件及AndroidManifest文件考到Unity项目
Assets/Plugins/Android 文件夹下
Unity中发布Android,注意包名和你AS项目的包名一至
我建的Unity测试项目是一个很简单的场景,就是像机看着几个Cube
流程如上,但是会报出很多错误,要解决这些问题就要如下操作。
首先
在AS中创建Android项目时
最后一页有一个选项:Backwards Compatibility(AppCompat)
这个选项不要勾选上,我的Unity跟AppCompat可能有不共戴天之仇吧
其次,JDK版本
我原先是1.7,会报出如下
Failed to compile resources with the following parameters: -bootclasspath "/Users/alex/development/adt-bundle-mac-x86_64-20131030/sdk/platforms/android-21/android.jar" -d "/Users/alex/Documents/development/unity/Maze/Maze/Temp/StagingArea/bin/classes" -source 1.6 -target 1.6 -encoding UTF-8 "com/facebook/android/R.java" "com/google/android/gms/R.java"
这样的错误,在StackOverFlow上的人们解答是把JDK升级到1.8
我照做了,OK了
最后,在MainActivity中的onCreate方法中第二行语句
setContentView(R.layout.activity_main);
这行必须注释掉,不然装上apk运行就报错退出
到此,我们的Unity项目可以成功发布成Android APK了