unity3d+android:Unable to convert classes into dex format;apk解析失败;Plugins

BuildTool更新出apk失败

报错
CommandInvokationFailure: Unable to convert classes into dex format.
E:/AndroidSdk/jre\bin\java.exe -Xmx4096M -Dcom.android.sdkmanager.toolsdir=“E:/AndroidSdk/sdk\tools” -Dfile.encoding=UTF8 -jar “D:\Program Files\Unity2017.4.40\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar” -
stderr[
Error:Invalid command dx
]
stdout[
]
exit code: 64
原因

Unable to convert classes into dex format经常是有重复jar包报错,但这里不是
https://www.cnblogs.com/colin1983/p/3787802.html

进入as删除比较新的buildtools

as会更新,会自动下载最新的30.0.0的build-tools,30里面已经没有dx.exe,这样打包时报错。
解决办法
使用as里面sdk设置删除多余的高版本buildTools
在这里插入图片描述

或者使用祖传sdk
链接:https://pan.baidu.com/s/1BSEkpk4K4JrIncq3vZpAKQ
提取码:naz9

Plugins目录

Plugins

Plugins文件夹用来放native插件。它们会被自动包含进build中去。
Plugins文件夹只能是Assets文件夹的直接子目录!!!,
Plugins文件夹只能是Assets文件夹的直接子目录!!!,
Plugins文件夹只能是Assets文件夹的直接子目录!!!。
在Windows平台下,native 插件是dll文件;Mac OS X下,是bundle文件;Linux下,是.so文件。
跟Standard Assets一样,这里的脚本会更早的编译,允许它们被之外的脚本访问。

Plugins/x86

如果为32bit或64bit平台创建游戏,那么这个文件夹下的native plugin文件会被自动的包含在游戏build中。如果这个文件夹不存在,则Unity会查找Plugins文件夹下的native pluglins。

Plugins/x86_64

如果为32bit或64bit平台创建游戏,那么这个文件夹下的native plugin文件会被自动的包含在游戏build中。如果这个文件夹不存在,则Unity会查找Plugins文件夹下的native pluglins。
如果要创建universal build,建议你同时使用这两个文件夹。然后将32bit和64bit的native plugins放进相应的文件夹中。

Plugins/Android

在这个文件夹里放入Java.jar文件。用于java语言的plugins。.so文件也会被包含进来。参考
[http://docs.unity3d.com/Documentation/Manual/PluginsForAndroid.html
如果出apk失败,CommandInvokationFailure: Unable to convert classes into dex format多半是有重复jar包

Plugins/iOS

A limited, simple way to automatically add (as symbolic links) any .a, .m, .mm, .c, or .cpp files into the generated Xcode project. See
[http://docs.unity3d.com/Documentation/Manual/PluginsForIOS.html
If you need more control how to automatically add files to the Xcode project, you should make use of the PostprocessBuildPlayer feature. Doing so does not require you to place such files in the Plugins/iOS folder. See
[http://docs.unity3d.com/Documentation/Manual/BuildPlayerPipeline.html

出apk安装时解析失败

原因是AS和Unity共用一个sdk目录导致,一旦as更新,破坏了unity的sdk环境,因为unity每个版本和sdk是一一对应,unity老版本并不能支持高sdk。最好做法,unity一旦能测试apk出包正常,保存住环境,复制一遍,as里的sdk目录指向这个复制的目录。
祖传unity sdk
链接:https://pan.baidu.com/s/1BSEkpk4K4JrIncq3vZpAKQ
提取码:naz9

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

四夕立羽

你的鼓励将是我创作的最大动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值