Я использую libgdx для игры и хочу, чтобы игра вызывала метод update()
, настроенный прямо сейчас, чтобы вызываться каждые 15 минут. Однако это работает, конечно, только тогда, когда открыта сама игра, и я хочу, чтобы это работало, пока устройство включено.
На данный момент я понял, как создать BroadcastReceiver и использовать AlarmManager для вызова его каждые 15 минут, и я знаю, как настроить его для добавления будильника при загрузке. Единственное, что мне нужно выяснить, это как сделать так, чтобы это было запланировано с точными 15-минутными интервалами (например, 9:30, 9:45 и т. д.).
Это источник приложения Android: 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.