Unity各种平台检测用户退出

网上很多人在没有测试的情况的下瞎掰,真的是耽误别人时间。

这篇的前景是Unity在安卓端、ios、PC分别使用Sqlite数据库存储数据(这里我用来实现游戏的暂存):寒假找了个线上实习,有一个功能就是要游戏暂存,这是个消除游戏,没必要每一步都去操作数据库,我们只需要在用户退出时记录即可,并且我们需要根据退出的时机决定某些流程(因为这个游戏还有引导界面,游戏局数的控制),用户退出有几种情况:
1.用户直接后台杀死应用
2.用户通过退出(Application.Quit)退出
3.应用被非用户原因强制退出

我的版本是unity2019.3.14
这几种情况在代码中体现:不必在乎逻辑代码,当然你可以结合上面链接的代码看看

	private void Update()
    {
   
    //检测用户主动退出:
        if (Input.GetKey(KeyCode.Escape))
        {
   
            MyEventCenter.Broadcast(EventType.ShowQuitPanel);//用来弹出询问是否退出的界面
        }
    }
    
    private bool isPause;
	//这个是用来检测玩家后台关闭应用(移动端)
    private void OnApplicationPause(bool pause)
    {
   
        if (pause) //后台杀死了应用
        {
   
            isPause = true;
            switch (CurrentState)
            {
   
                case GameState.Guide:
                    PlayerPrefs.DeleteKey("GameCount")
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值