簡體   English   中英

睡眠模式下的活動生命周期異常行為(libGDX游戲)

[英]Activity lifecycle strange behavior in sleep mode (libGDX game)

我在LibGDX游戲中有一個非常奇怪的Activity行為-當我玩游戲然后按電源按鈕將設備發送到睡眠模式時。 我已經將日志添加到Activity的回調方法中,這就是我看到的內容:

05-14 16:32:51.694: I/BP(32656): onPause()
05-14 16:32:51.704: I/BP(32656): onStop()
05-14 16:32:51.854: I/BPApplication(32656): BPApplication.onConfigurationChanged()
05-14 16:32:51.854: I/BP(32656): BP.onConfigurationChanged()

至此一切順利。 進一步有些奇怪的開始:

05-14 16:40:42.774: I/BP(32656): onRestart()
05-14 16:40:42.774: I/BP(32656): onStart()
05-14 16:40:43.064: I/BP(32656): onResume()
05-14 16:40:44.566: I/BP(32656): BP.onConfigurationChanged()
05-14 16:40:44.566: I/BPApplication(32656): BPApplication.onConfigurationChanged()
05-14 16:40:49.761: I/System.out(32656): screen resize w = 480, h=800 // libGDX callback
05-14 16:40:49.911: I/System.out(32656): GAME RESUMED...              // libGDX callback
05-14 16:40:50.471: I/System.out(32656): screen resize w = 800, h=480 // libGDX callback
05-14 16:40:59.010: I/System.out(32656): GAME PAUSED                  // libGDX callback
05-14 16:41:00.711: I/BP(32656): onPause()
05-14 16:41:00.801: I/BP(32656): onStop()
05-14 16:41:00.851: I/BP(32656): onRestart()
.... this cycle repeats 5 - 10 times ....

因此,您可以看到,問題是當設備處於睡眠狀態時,Activity.onRestart()和進一步的回調調用。 在近一分鍾內重復5-10次。
我不明白為什么Activity重新啟動以及正在執行此操作的原因。 在我的游戲中,我有計費服務v2(由其他程序員實現),並設置了AlarmManager以恢復免費游戲。

我對此問題完全感到困惑,因此將不勝感激。

更新

似乎在libGDX中達成協議-我用相同的庫版本構建了另一個項目,其行為與我的游戲完全相同。

在您的AndroidManifest.xml中,您應該有類似-

<activity 
  android:name=".YourAppName"
  android:configChanges="keyboardHidden|orientation|screenSize"/>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM