Unity 打包apk 时报错
报错:Error building Player: CommandInvokationFailure: Unable to convert classes into dex format. See the Console for details.D:/jdk1.7\bin\java.exe -Xmx1024M -Dcom.android.sdkmanager.toolsdir=“E:/android-sdk-windows\tools” -Dfile.encoding=UTF8 -jar “D:\Unity5.2.3SetUp\Editor\Data\PlaybackEngines\androidplayer/Tools\sdktools.jar”
解决方法:
(一)
现在导出jar包的方式是直接在eclipse中导出的1.选择工程名鼠标右键2选择export3,选择jave下的jar file点击“next”,然后在选择需要将哪些文件打成jar的时候要注意,只选择src文件,其余的文件都不要选择,这样打出的jar包就是没有问题的。在将android工程
中的文件夹拷入到unity中的时候值选择Androidmianfest.xml和res文件就可以了。然后在写相依的代码调用就可以了。
(二)
还有一种可能就是 jar包冲突1).classes.jar冲突,unity编译时默认包含了classes.jar ,所以删除Plugins/Android/libs 下的classes.jar2).类似android-support-v13.jar和android-support-v4.jar的冲突,保留android-support-v13.jar。
正确的流程是 在Eclipse 中 只打包bin目录下的jar包 然后把AndroidManifest.xml放在Assets\Plugins \Android
下 没有的自己创建
如果有一些特别操作 如SDK 把 Eclipse中 res目录也拷贝到Assets\Plugins \Android
下 即可