我正在将 libgdx 用于游戏,我希望能够让游戏调用一个update()
现在设置为每 15 分钟调用一次的方法。但是,这当然只在游戏本身打开时才有效,并且我希望它在设备开启时能够正常工作。
到目前为止,我知道如何创建 BroadcastReceiver 并使用 AlarmManager 每 15 分钟调用一次,并且我知道如何设置它以在启动时添加我的警报。我唯一要弄清楚的是如何以精确的 15 分钟间隔(即 9:30、9:45 等)进行安排
这是 AndroidApplication 的来源: https ://github.com/libgdx/libgdx/blob/master/backends/gdx-backend-android/src/com/badlogic/gdx/backends/android/AndroidApplication.java
用于启动它的代码是这样的:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.useGL20 = true;
cfg.useAccelerometer = false;
cfg.useCompass = false;
initialize(new MainClass(), cfg);
}
环顾四周,找不到任何实际引用的方式,MainClass()
而无需调用onCreate()
. 我假设做这样的事情的最佳方法有一个单独的意图,即update()
方法的副本并调用对相同数据的访问,但是我不知道如何在 libgdx 中做到这一点。