Unity发布android遇到的问题及解决办法
发表于2018-05-16
本篇文章是在对Unity发布到android的实际使用中出现的问题,并总结出来相对应的方法!如果大家想在发布的时候不出错,一次成功,相信本篇文章的内容会对你有很大帮助。
Unity端 Unity5.3
Android端 eclipse
广告SDK:百度广告SDK
总体说明
由于Unity发布到andorid如果你不接广告,那么直接发布就可以,如果你要接其他SDK或者是广告,那么需要以google android project方式发布成android工程:
1. Build Settings->Player Settings->Other Settings->ScriptingBackend 选择Monox
2. Build Settings->Player Settings->OtherSettings->Optmization->Api Compatibility Level 如果使用了文件一系列的操作,选择.NET 2.0
3. Build Settings->Player Settings->Company Name 与Product Name的名字不要胡写,审核不通过不要抱怨!!!!
4. Build Settings->Player Settings->Other Settings->BundleIdentifier不要胡写,审核不通过不要抱怨!!!!
5. 发布前,注意需要把ICON与Splash Image设置好。要不发布后,还得重新发布,很麻烦。(Build Settings->Player Settings->Default Icon也要设置好)
6. Build Settings->Player Settings->PublishingSettings->Keystore设置好,不设置的话是debug模式,很多平台无法发布。当然,也可以在eclipse中进行包签名
7. 64为的unity好像无法设置Splash Image 当然也有可能是我机器的问题
8. 广告啊,付费什么的,不要使用第三方 unity包!!!!!!!(因为第三方包,打包的时候,包名与你的工程名称并不对应,你发布后,icon与splash也会无法显示,这个你需要修改AndroidManifest .xml的设置,有很大可能SDK中的功能也无法使用)
Eclipse中的坑
1. Android SDK与Andorid开发插件的版本需要一致!!!!
如果不一致,你新建的工程,src中与res-> layout中没有文件(百度下载一致的工程文件也可以,不过需要注意不要太旧,要不与unity发布的SDK版本不对应)
2. Unity调用Android的包, 你写了一个SDK想让Unity调用,需要注意的是:打成Jar包的时候,只打src 与res文件夹! 因为5.0以后版本的unity 如果你全打包,那么会有很多.classes文件,unity是无法编译通过的
3. android的包名需要与Unity中的一致!!!
4. android-support-v4 需要与sdk中的一致,否则eclipse无法编译通过
5. 注意第三方SDK:!!!
这点需要特别说明,我第一次调用百度SDK的时候,广告都介入完毕,怎么都调用不出来。起初我还怀疑是UnityPlayerActivity修改了Activity的方法,所以无法调用。后来仔细观察,发现百度的Demo中,将显示广告的方法写在了 Print Log方法中,,,特别的坑。所以大家需要注意!!!!!!!!!!!!!
6. 360平台你必须使用它的广告SDK,而且还不能带其他广告的SDK。。。。包括ADS。。。ADS关闭很麻烦,需要删除编译器中的ads模块 unity也是坑
7. Unity有可能出毛病!!!!!!!!!!!!!有时候,你总发布,总发布不过去,你重启下unity就能发布过去。很坑!
做IOS开发的还可以参考:Unity发布IOS时遇到的问题及解决办法