Unity3d OnApplicationPause与OnApplicationFocus
来源:互联网 发布:滴滴数据存储架构 编辑:程序博客网 时间:2024/06/05 18:42
在手机游戏当中,会碰到“强制暂停”,如:锁屏、接电话或短信之类的。如果“强制暂停”时间过长,网络游戏有时得重新登录等事件。
而Unity3d,Android Plugins中的UnityPlayer.UnitySendMessage,经测试在强制暂停时,OnPause、OnStop周期中UnitySendMessage无效。
重点探索OnApplicationPause和OnApplicationFocus;
OnApplicationPause,当程序暂停;
OnApplicationFocus,当程序获得或失去焦点;
经测试:
强制暂停时,先 OnApplicationPause,后 OnApplicationFocus;
重新“启动”手机时,先OnApplicationFocus,后 OnApplicationPause;
思路:
1,定义两个bool
isPause=false;
isFocus=false;
在
OnEnable();初始化:
void OnEnable(){
isPause=false;
isFocus=false;
}
void OnApplicationPause(){
#if UNITY_IPHONE || UNITY_ANDROID
Debug.Log("OnApplicationPause "+isPause+" "+isFocus);
if(!isPause)
{
// 强制暂停时,事件
pauseTime();
}
else
{
isFocus=true;
}
isPause=true;
#endif
}
void OnApplicationFocus(){
#if UNITY_IPHONE || UNITY_ANDROID
Debug.Log("OnApplicationFocus "+isPause+" "+isFocus);
if(isFocus)
{
// “启动”手机时,事件
resumeList();
isPause=false;
isFocus=false;
}
if(isPause)
{
isFocus=true;
}
#endif
}
- Unity3d OnApplicationPause与OnApplicationFocus
- Unity3d OnApplicationPause与OnApplicationFocus
- Unity3d OnApplicationPause与OnApplicationFocus
- Unity3d OnApplicationPause与OnApplicationFocus
- Unity3d OnApplicationPause与OnApplicationFocus
- Unity3d OnApplicationPause与OnApplicationFocus
- Unity3d OnApplicationPause与OnApplicationFocus 判断游戏暂停还是重新启动
- Unity3d OnApplicationPause与OnApplicationFocus 在安卓平台的应用
- 小译UnityAPI-OnApplicationFocus,OnApplicationPause,OnApplicationQuit
- 【U3D】关于 IOSApp唤醒API: OnApplicationPause 和 OnApplicationFocus
- OnApplicationFocus
- OnApplicationPause
- Unity3d_OnApplicationPause与OnApplicationFocus(监听当前程序的焦点)
- Unity OnApplicationPause 恢复游戏
- Unity onApplicationPause 回调失败
- Unity3d与dll文件
- 【Unity3D】OnTriggerEnter与OnCollisionEnter
- unity3d安装与破解
- Delphi实现Ftp客户端下载(支持断点续传,多线程传输)
- 【Android】状态栏通知Notification、NotificationManager详解
- 推荐一款php IDE
- myeclipse中使用自带工具导出可执行jar文件
- Android时间戳与字符串相互转换
- Unity3d OnApplicationPause与OnApplicationFocus
- vc6.0批量编译
- cocos2d-x源码剖析引子
- error: %preun(keepalived-1.2.7-3.el6.x86_64) scriptlet failed, exit status 1 解决
- x86内存寻址
- String 和StringBuffer的区别
- Oracle字符串操作
- linux 查看当前系统版本
- SQO2008配置管理工具服务显示远程过程调用失败