1 U3d中游戏为什么无法正常退出?
1.1 问题详细描述
客户使用back键退出游戏,没有反应;客户点击退出按钮退出游戏时,游戏又自动运行
1.2 问题解决方法
确定客户是否想要back键可以退出游戏,如果客户想要back键也可以退出游戏,建议客户自己在onExit(curActivity.GetRawObject());里做退出处理
onExitWithUI(curActivity.GetRawObject());这个接口里调用的system.exit()函数在安卓上,可能会出现退出后又自动运行这个问题,system.exit()退出整个应用程序,是针对整个Application的,将整个进程直接Kill掉。不建议客户调用onExitWithUI退出函数,改用:
onExit(curActivity.GetRawObject());
curActivity.Call("finish");
再调用一下Activity的finish退出. finish函数仅仅把当前Activity
退出了,但是并没有释放它的资源。
finish是Activity的类,仅仅针对Activity,当调用finish()时,只是将Activity推向后台,并没有立即释放内存,活动的资源并没有被清理;当调用System.exit(0)时,杀死了整个进程,这时候活动所占的资源也会被释放。
2 退出的时候出现一个空的activity页面,带标题的,是否能去掉?
2.1 问题详细描述
退出游戏的时候,出现一个空的带标题的activity页面,如图:
2.2 问题解决方法
AndroidManifest.xml文件中,在主activity里添加android:theme="@*android:style/Theme.NoTitleBar.Fullscreen"
3 运行游戏无法弹出界面,一直蓝屏。Log显示不能加载lib库
3.1 问题解决方法
在u3d 4.3以上的版本,需要把cs文件中[DllImport ("libsfunityoffline")]的lib去掉,即[DllImport ("sfunityoffline")]
4 生成apk文件在手机上运行中文字体显示都是乱码
4.1 问题解决方法
先在windows的font文件夹下弄一个中文字体比如宋体.ttf把这个字体文件放在unity3的assets目录下。这样unity3d就会自动加载这个字体。要使用这个字体还需要建立一个GUISink。Assets->Creat->GUI Sink.建立好GUISink后点开属性,最好上面Font项的字体改为新加入的中文字体。
如果发现依然不能显示中文,得把Font中的Character变为unicode才可以。
5 U3d 5.0的版本在编译项目的时候找不到.so文件?
U3d 5.0的版本.so库直接放到libs下面,不要放到libs\armeabi下面。