2016-02-15 79 views
-1

所以我爲自己做了一個小小的「增量遊戲」。android上的離子生命週期?

注:對於那些誰不熟悉的增量,你點擊一個按鈕,它增加了價值,各種各樣的貨幣。您通過手動點擊/點擊手動購買升級以自動生成此貨幣,節省您購買新鼠標的成本。或者在這種情況下,一個新手機。

現在,我一直在測試與它周圍。離子和所有新的。我已經意識到,在Android(我從我的CLI做Ionic運行android),如果我打到手機上的本機「後退」按鈕,它完全暫停應用程序。我的自動生成被暫停。這很好,所有!它畢竟是有意的。

問題/問題是當我打了本地的「家」按鈕。這將我帶到了Android的主屏幕以及手機自動「睡眠」時。無論何時發生這種情況,如果您已購買升級,自動生成將在後臺繼續。這與預期的功能是相反的。它應該停止!

所以,從原生Android,Java的未來。我明白應用程序有一個生命週期。

問題: 離子是怎樣的?並根據退出應用程序的方法進入不同的狀態嗎? iOS和Android有什麼不同?我迄今固定在Android系統,但我不知道如何測試它是否適用於iOS的...

額外的信息:我目前使用$間隔,以保持遊戲的主循環運行。我每秒自動生成一次我的貨幣,並將其保存到sqlite數據庫中。 (兩者每秒運行一次)。另外,我沒有安裝插件!只使用服務。

回答

0

好。我認爲這一切都與生命週期有關。據我所知用我的調試工具,我要跟蹤應用程序在我的控制器打字做這兩個,「恢復」和「暫停」:

document.addEventListener("resume", function() { 
    console.log("Resume!"); 
    }, false); 

    document.addEventListener("pause", function() { 
    console.log("Pause!"); 
    }, false); 

我已經使用這個想通了,我的問題。所以我知道無論退出應用程序的方式如何,我都會遇到「暫停」,不管從哪種方法退出應用程序,它都會在返回時通過「恢復」狀態。因此,使用這兩種方法,我只需取消我的間隔時間暫停,並在恢復時再次啓動!