Unity匯出APk出錯解決方法二
阿新 • • 發佈:2018-11-15
錯誤提示(需得開啟編輯器log檔案才能看到全部log,Unity3d只顯示一部分):
Error building Player: CommandInvokationFailure: Unable to convert classes into dex format. See the Console for details. C:/Program Files/Java/jdk1.8.0_05\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="F:\adt-bundle-windows-x86_64\sdk\tools" -Dfile.encoding=UTF8 -jar "D:\develop\Unity5.3.7\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" - warning: Ignoring InnerClasses attribute for an anonymous inner class (com.tendcloud.tenddata.game.ae) that doesn't come with an associated EnclosingMethod attribute. This class was probably produced by a compiler that did not target the modern .class file format. The recommended solution is to recompile the class from source, using an up-to-date compiler and without specifying any "-target" type options. The consequence of ignoring this warning is that reflective operations on this class will incorrectly indicate that it is *not* an inner class. rouble writing output: Too many method references to fit in one dex file: 67088; max is 65536. You may try using multi-dex. If multi-dex is enabled then the list of classes for the main dex list is too large. References by package: 4 android.accessibilityservice 4 android.accounts 106 android.animation 451 android.app 17 android.app.job 2 android.appwidget 53 android.arch.core.internal 105 android.arch.lifecycle 1 android.bluetooth 241 android.content 55 android.content.pm 111 android.content.res 58 android.database 25 android.database.sqlite 256 android.graphics 130 android.graphics.drawable 3 android.graphics.drawable.shapes 3 android.graphics.pdf 35 android.hardware 5 android.hardware.display 11 android.hardware.fingerprint 24 android.location 259 android.media 19 android.media.browse 92 android.media.session 69 android.net 6 android.net.http 7 android.net.nsd 16 android.net.wifi 2 android.nfc 2 android.nfc.cardemulation 71 android.opengl 311 android.os 1 android.preference 28 android.print 5 android.print.pdf 18 android.provider 8 android.renderscript 9 android.security 6 android.security.keystore 10 android.service.media 31 android.support.annotation 14 android.support.compat 153 android.support.constraint 125 android.support.constraint.solver 375 android.support.constraint.solver.widgets 14 android.support.coreui 14 android.support.coreutils 216 android.support.customtabs 16 android.support.design 309 android.support.design.internal 1527 android.support.design.widget 14 android.support.fragment 335 android.support.graphics.drawable 14 android.support.graphics.drawable.animated 14 android.support.mediacompat 843 android.support.transition
解決方法:
1.去掉不需要的jar包
2.匯出android studio工程使用多個multi-dex:true 選項
官方文件解決64k限制方法:https://developer.android.com/studio/build/multidex
相關文章 https://medium.com/@abhpatidar/solving-unity-dex-issue-538e134c8809