为什么Unity5打的空包有17mb?

今天在论坛上看到有人提到Unity5的诸多“罪状”,其中一条就是打出来的空包竟然有17mb,而之前的版本是9mb。我很好奇,难道是IL2Cpp搞的鬼?

因为好奇,我特意准备了Android环境(之前的环境太老了,不得不重新弄),打了一个空包试验了下。其实原因很简单,因为考虑到兼容性Unity5默认情况下同时打了armv7a和x86的动态库。于是空包的大小就增加了几乎一倍。

如截图所示,在PlayerSetting中把Device Filter中的FAT修改为ARMv7就可以了。

一般情况下android平台不需要编译x86的版本,因为设备太少了,需要考虑对应平台的时候可以单独打一个x86版本的包。除非不考虑apk的包大小的时候,才会选择FAT兼顾兼容性。

最后额外牢骚一下,不用心的程序员只会看到xxx不行,有xxx问题(水平差的根本连问题都看不出来),而稍微用一点心就可以“知其然而又知其所以然”。这个其实一点技术含量都没有,打个空包看看哪里比较大,很容易知道问题所在,用心而已。

时间: 2024-08-11 01:35:47

为什么Unity5打的空包有17mb?的相关文章

intellj下打的jar包在linux服务器删执行报错

intellj下打的jar包在linux服务器删执行报错:http://blog.csdn.net/qq_25925973/article/details/53370501window下用解压工具打开jar包,删除META-INFO下的.SF .RSA文件,删除后上次到linux服务器上,用java jar xx.jar去执行 原文地址:http://blog.51cto.com/5731674/2087591

Socket服务端一直收空包的原因与解决方法

最近做socket服务端,大部分时候系统是正常的,但是运行个一段时间就会一直以超高的频率收到很多数据,一开始以为是下位机上报的,没怎么上心,后来下位机工程师说他们没上报,所以重新看了下代码,发现程序会一直调用 netStream.BeginRead,EndRead,一直收数据,而且受到的数据包都是0字节,百度了20分钟,大神们说socket客户端正常关闭的时候服务端会收到一个长度是0的数据包,如果一直循环调用会一直收到,原话如下 出现原因:一.用户正常退出,这时你还循环调用了Receive方法时

如何将自己打的jar包放到maven仓库中

1,导入 mvn install:install-file -DgroupId=com.qsfs  -DartifactId=qsfs  -Dversion=1.0 -Dfile=文件的绝对路径   -Dpackaging=jar 2,引入 pom文件引入的时候为 ?<dependency> <groupId>com.qsfs </groupId> <artifactId>qsfs</artifactId> <version>1.0&

通过 getResources 找不到jar包中的资源和目录的解决方法

http://my.oschina.net/sub/blog/184074 今天碰到一个怪问题: 原本跑的好好的代码,打成 jar 包就不能运行了. 问题出在,代码中有一段自动扫描 classpath 下面的指定 package 的 class ClassLoader loader = Thread.currentThread().getContextClassLoader(); String packageDirName = packageName.replace('.', '/'); Enu

Spring Boot 打war包并利用docBase指定根目录为打包的工程

指定根目录有两种方式 1:直接将打的war包名称定义为ROOT 2:利用docBase 比如笔者war包名为xibu.war,将该war包丢到/Users/archerlj/Library/apache-tomcat-8.5.8/webapps目录下即可.为了访问方便,我修改了tomcat安装目录下的conf文件下的server.xml文件: 在该文件最后的Host节点添加如下: <!-- path留空代表访问域名后面不需要带项目的名称 --> <Context path="&

osgi应用使用桥接的方式打成war包部署在websphere上时遇到的与cxf相关的问题

原来我们的程序都是基于Equinox架构的,但是后面因为要实现打成war包在中间件中部署的需求,使用了eclipse官方提供的桥接方式实现. 桥接的部分后面有时间了我专门写一个文章来说,不明白的暂时请参考eclipse官方文档.这里主要说一下已经桥接成功,但是在使用CXF时遇到问题的情况. 本来在其他中间件里跑得好好的程序,一放到websphere_v8里,就各种报错,都是与axis2有关的,但是我们的项目并没有使用axis2,而是使用cxf. 报错类似如下(我有3个环境,每个报的错都不同,不过

Day35:基于UDO的套接字、粘包问题

一.基于UDP的套接字 UDP服务端 ss = socket() #创建一个服务器的套接字 ss.bind() #绑定服务器套接字 inf_loop: #服务器无限循环 cs = ss.recvfrom()/ss.sendto() # 对话(接收与发送) ss.close() # 关闭服务器套接字 UDP客户端 cs = socket() # 创建客户套接字 comm_loop: # 通讯循环 cs.sendto()/cs.recvfrom() # 对话(发送/接收) cs.close() #

由提交storm项目jar包引发对jar的原理的探索

序:在开发storm项目时,提交项目jar包当把依赖的第三方jar包都打进去提交storm集群启动时报了发现多个同名的文件错误由此开始了一段对jar包的深刻理解之路. java.lang.RuntimeException: Found multiple defaults.yaml resources. You're probably bundling the Storm jars with your topology jar. [jar:file:/home/hadoop/app/storm/l

androidStudio 改包名

很多时候,我们需要将app换套皮肤,然后当作一个新的app来打包.如果只是更换了资源这样的安装包会将之前安装好的app替换掉. 1:不推荐的做法:直接在AndroidStudio里修改build.gradle的applicationId就可以了,但是这样做会引起第三方的授权问题,如友盟.jpush不会更新包名的.造成第三方不能正常使用2:正常的做法:转自:http://www.jianshu.com/p/557e1906db1a 默认Compact Empty Middle Packages(