tvo*_*hyn 6 c# resume unity-game-engine
我正在尝试使用OnApplicationPause函数在Unity中实现暂停.
当我通过按下主页按钮退出我的游戏(在Android上)然后通过活动应用程序列表返回时似乎工作正常,但是当我按下主屏幕上的游戏图标时,它重新启动游戏而不是让我回来.
有没有办法解决 ?
对我来说,当我在日志中有一个:android.os.DeadObjectException时,就会发生这种情况.(意思是申请已经死亡).
检查日志中是否包含这样的内容:
I/ActivityManager( 600): Restarting because process died: ActivityRecord{439f9588 u0 com.mycompany.myapp/com.unity3d.player.UnityPlayerProxyActivity}
W/ActivityManager( 600): Exception when starting activity com.mycompany.myapp/com.unity3d.player.UnityPlayerProxyActivity
W/ActivityManager( 600): android.os.DeadObjectException
W/ActivityManager( 600): at android.os.BinderProxy.transact(Native Method)
W/ActivityManager( 600): at android.app.ApplicationThreadProxy.scheduleLaunchActivity(ApplicationThreadNative.java:759)
W/ActivityManager( 600): at com.android.server.am.ActivityStack.realStartActivityLocked(ActivityStack.java:1120)
W/ActivityManager( 600): at com.android.server.am.ActivityStack.startSpecificActivityLocked(ActivityStack.java:1247)
Run Code Online (Sandbox Code Playgroud)
...如果是这样,请在日志中进一步查看以查看应用程序死亡的原因.为了让我的应用程序免于死亡,我不得不移动意图过滤器:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
从UnityPlayerProxyActivity到UnityPlayerNativeActivity
它应该在您返回游戏时恢复。如果没有,那么您的游戏流程可能会在暂停恢复后自动重新启动。
在您的游戏中,尝试检查 OnApplicationPause 的状态并从那里进行调试。代码示例在此线程中http://answers.unity3d.com/questions/286939/detecting-when-applicationdidbecomeactive-in-unity.html