我正在使用libGDX,即使关闭了向用户发送推送通知/提醒,我仍希望我的应用程序继续运行。我需要为iOS和Android都这样做。
答案 0 :(得分:0)
你需要在android上实现一个服务并为它创建一个接口。基本上这将是您的游戏的平台相关代码。
创建一个接口AndroidPushNotificationServiceCallback;
public interface AndroidPushNotificationServiceCallback {
public void startService();
public void sendPushNotification();
public void stopService();
}
然后让您的主GameListener构造函数将此侦听器作为参数
public class MainGameListener extends ApplicationListener{
public MainGameListener(AndroidPushNotificationServiceCallback callback)
this.callback = callback;
}
然后让你的android mainactivity实现这个接口
public class MainActivity extends AndroidApplication implements AndroidPushNotificationServiceCallback{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.useGL20 = true;
cfg.useAccelerometer=false;
cfg.useCompass=false;
initialize(new MainGameListener(), cfg);
}
public void startService(){
// start a service here
}
public void sendPushNotification(){
// send push notifcations here
}
public void stopService(){
// stop the service here
}
}
现在在你的gamelistener中你需要调用方法来在回调上启动服务。然后,回调实现将启动该服务。
这只是一个虚拟的例子。此外,这种方法是通用的,在任何你想要调用平台特定方法的情况下使用它。
启动服务后,它可以设置警报和其他内容以定期调用代码(例如在您的情况下发送推送通知)