Unity发布android遇到的问题及解决办法

发表于2018-05-16
评论0 5.9k浏览
本篇文章是在对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时遇到的问题及解决办法

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引