当应用程序从最近删除时,保持消息中心处于活动状态



我正在尝试创建一个后台调度程序,它将定期在服务器上发送数据。 为此,我在Android中创建了服务,该服务将在1分钟后使用MessageCenterXamarin.Forms发送消息,以便它可以将数据发送到服务器。

与将数据发送到服务器相关的代码驻留在Xamarin.Forms因此我通过MessageCenterXamarin.androidXamarin.Forms进行通信

当应用程序位于前台时,它运行良好,但当我从最近的应用程序中删除时。

MessageCenter订阅Xamarin.Forms死了,因此当服务Xamarin.Android发布事件到Xamarin.Forms没有人在那里收听时,因此我的数据没有发布在服务器上。

用于订阅消息中心的 Xamarin.Forms 代码

public void subscribeSyncScheduler()
{
MessagingCenter.Subscribe<IMessage, EventType>(this, RestApi.SYNC_SCHEDULER_EVENT, (sender, arg) =>
{
//SYNC DATA TO SERVER

});
}

服务正在向 Xamarin.Forms 呈现事件

public override StartCommandResult OnStartCommand(Intent intent, [GeneratedEnum] StartCommandFlags flags, int startId)
{
Log.Error(TAG, "Sync: Service gets called ");

MessagingCenter.Send<IMessage, EventType>(this, RestApi.SYNC_SCHEDULER_EVENT, null);
}

参考 http://arteksoftware.com/backgrounding-with-xamarin-forms/

使用 Android 后台服务和 iOS 后台线程 使用依赖关系服务运行任务,即使在应用最小化或终止后

相关内容

  • 没有找到相关文章

最新更新