为什么在android上两次调用unity OnApplicationPause?
我有一个简单的游戏对象(主UI对象),带有为什么在android上两次调用unity OnApplicationPause?,android,unity3d,duplicate-removal,onresume,onpause,Android,Unity3d,Duplicate Removal,Onresume,Onpause,我有一个简单的游戏对象(主UI对象),带有OnApplicationPause,它在调试日志中打印出Pause状态(真/假)。 当我在android上运行它,按下Home按钮离开应用程序时,我看到Application Pause()上的连续调用两次,调用的是相同的pauseStatus(true)。当我重新打开应用程序时也会发生同样的情况:调用两次应用程序暂停的OnApplicationPause,状态为false 为什么要叫两次,我能避免吗?我做错什么了吗 我还尝试创建一个单独的游戏对象,其
OnApplicationPause
,它在调试日志中打印出Pause
状态(真/假)
。
当我在android上运行它,按下Home按钮离开应用程序时,我看到Application Pause()上的连续调用两次,调用的是相同的pauseStatus
(true)。当我重新打开应用程序时也会发生同样的情况:调用两次应用程序暂停的OnApplicationPause
,状态为false
为什么要叫两次,我能避免吗?我做错什么了吗
我还尝试创建一个单独的游戏对象,其中包含相同的调试代码。该问题不会出现在那里-仅在我的主UI对象中。是否100%确定在发生暂停时,包含应用程序暂停()方法的脚本不会在场景中出现两次?或者出现在DontDestroyOnLoad
游戏对象的前一个场景中
当发生暂停时,在每个活动的单行为上调用
因此,拥有两个Debug.Log
意味着如果您自己不手动调用它,两个脚本实例将运行。您的线索是正确的:脚本与场景中的两个不同对象关联(但不确定为什么,代码来自第三方unity软件包,其中包括此演示场景、对象、脚本等)。谢谢