【Unreal】【保姆级教程】手把手教你检测手机状态(获取手机处于前台/后台/手机音量),在Unreal端实现Android上的OnResume和OnPause方法

Unreal实现Android Studio端OnResume,OnPuase等方法以及监测iOS手机电量详细教学

业务场景介绍

  众所周知,如果是在Android studio中开发安卓应用,如果我们想要检测应用的状态,在应用切入后台或者进入前台的时候是很容易的(调用onResume和Onpause方法就好)。但是如果是在Unreal端呢?如何实现这一功能呢?首先如果你在蓝图中输入bind,你可以看到以下内容:在这里插入图片描述
  从图中我们可以推断,对于用户进入应用,切出应用,结束应用等方法蓝图都有方法可以监听到这些事件;其中IOS还有低电量回调接口等。本篇主要是详细教你怎么去实现,跟着我一步步做就好了~

实现方法

方法概述

  首先看一下这个方法,以OnResume方法为例(在Unreal中其实就是  BindEventtoApplicationHasEnteredForegourndDelegte),他的输入是一个PlatformGameInstance和一个Event。
  PlatformGameInstance表示的是这个游戏的一个实例,当游戏在不同关卡切换时,这个实例都不会被销毁。它记录着游戏的各种状态。
  Event很简单,表示当相应的事情发生时,你要执行什么样的代码。也就相当于在Android Studio中,你在OnResume方法里要写什么样的代码。
  因此问题的核心不难看出:就是我们怎样来获得一个有效的PlatformGameInstance呢,
请添加图片描述

1. 创建Platform Game Instance

  要创建Platform Game Instance,右键单击内容浏览器底部的任何地方,然后单击“Blueprint class”。
在这里插入图片描述
   一个新的对话框将显示并询问你希望创建哪个父类。
在这里插入图片描述
  要创建Platform Game Instance,我们需要单击底部的“All Classes”下拉菜单。
在这里插入图片描述
  点击它将显示我们可以创建的所有类。
在这里插入图片描述
  在搜索框中输入Platform Game Instance,单击Platform Game Instance文本,然后单击select创建我们的新游戏实例。在这里插入图片描述
  现在在命名你的Platform Game Instance后(这里将它命名为MobileStates),它将显示在内容浏览器中。
在这里插入图片描述

2. 配置Platform Game Instance

  首先要配置项目设置,在你可以访问游戏Platform Game Instance之前,你需要配置游戏以使用我们刚刚创建的Platform Game Instance。这是一个非常简单的步骤,只需要点击几下。单击右上角的编辑,然后单击项目设置。
在这里插入图片描述
  一旦项目设置窗口打开,搜索地图和模式选项并单击它。
在这里插入图片描述
  接着要访问和设置变量,要开始使用你的游戏实例,右键单击你的任何蓝图(角色,演员等),并输入get游戏实例。这将使用你设置的变量检索游戏实例。
在这里插入图片描述
在这里插入图片描述

3. 使用Platform Game Instance

  要开始使用你的Platform Game Instance,右键单击你的任何蓝图(角色,演员等),并输入get游戏实例。
  这将使用你设置的变量检索游戏实例。
在这里插入图片描述
  从获取游戏实例节点的引脚创建一个转换节点到新创建的游戏实例类。
  此转换节点的名称与前面设置的Platform Game Instance的名字相同。
在这里插入图片描述
  从Cast To MobileStates的返回值上,我们就得到了一个有效的Platform Game Instance。
在这里插入图片描述

4. 整体蓝图

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41937380/article/details/128242951