C # Xamarin.Forms, создайте фоновый сервис для зацикливания HTTP-запросов и push-уведомлений. - PullRequest
0 голосов
/ 13 июня 2019

У меня проблема с созданием фоновой службы для зацикливания http-запроса и отправки уведомления, если данные изменяются. В андроиде: В первый раз я пытаюсь использовать Сервис, он работает очень хорошо, но не запускается, когда я закрываю приложение. Во второй раз я пытаюсь использовать JobService, но это ничего не делает. При отладке я вижу, что, может быть, я не могу добраться до JobService. Код службы работы:

public override bool OnStartJob(JobParameters @params)
        {
            Task.Run(() =>
            {
                CheckData();// my code here
            }
            ); 
            return true;
        }

public override bool OnStopJob(JobParameters @params)
        {
            return false;
        }

В основной деятельности:

Java.Lang.Class javaClass = Java.Lang.Class.FromType(typeof(NotificationJobService));
            ComponentName component = new ComponentName(ApplicationContext, javaClass);


            JobInfo.Builder builder = new JobInfo.Builder(1, component)
                .SetRequiresCharging(true)
                .SetRequiredNetworkType(NetworkType.Unmetered)
                .SetPersisted(true)
                .SetPeriodic(3000);

            JobInfo jobInfo = builder.Build();
            JobScheduler jobScheduler = (JobScheduler)GetSystemService(JobSchedulerService);
            int res = jobScheduler.Schedule(jobInfo); 
...