Предварительная версия Microsoft Band SDK — NotificationManager в фоновой задаче

Привет, я не уверен, что я что-то упускаю или это не связано с API, который, на мой взгляд, кажется недальновидным.

Может ли SDK отправить уведомление группе из фоновой задачи? Это кажется мне одной из самых полезных вещей, но когда я пытаюсь, я получаю сообщение об ошибке. 'bandClient.NotificationManager.SendMessageAsync' - это место, где выдается исключение. Фоновая задача — это задача таймера.

Фоновый код прост, я попробовал его в фоновом режиме и потоке пользовательского интерфейса.

пытаться

            {

                // Get the list of Microsoft Bands paired to the phone.

                IBandInfo[] pairedBands = await BandClientManager.Instance.GetBandsAsync();

                if (pairedBands.Length < 1)

                {

                    deferral.Complete();

                }


                // Connect to Microsoft Band.

                using (IBandClient bandClient = await BandClientManager.Instance.ConnectAsync(pairedBands[0]))

               {


                    await bandClient.NotificationManager.SendMessageAsync(myTileId, "Earnings", currentDollars.ToString(), DateTimeOffset.Now, f);

                }

            }

            catch (Exception ex)

Исключение и трассировка стека:

ex = {System.Exception: Катастрофический сбой (Исключение из HRESULT: 0x8000FFFF (E_UNEXPECTED))

в Windows.UI.Xaml.Application.get_Current()

в Microsoft.Band.BandClientManager.d__2.MoveNext()

--- Конец трассировки стека из предыдущего места...

в Windows.UI.Xaml.Application.get_Current()

в Microsoft.Band.BandClientManager.d__2.MoveNext()

--- Конец трассировки стека из предыдущего места, где было выдано исключение ---

в System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (задача задачи)

в System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (задача задачи)

в System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()

в WindowsRuntimeComponent1.AppTileUpdater.d__8.MoveNext()


person Stefan V    schedule 25.02.2015    source источник
comment
Вы вообще можете подключиться к устройству?   -  person Iris Classon    schedule 25.02.2015
comment
хороший вопрос, да, я могу. Итак, мое приложение простое, фоновая задача и приложение для Windows Phone. Приложение Windows Phone прекрасно подключается к браслету, добавляет плитку и может отправлять уведомления. Если я использую тот же код в фоновой задаче для подключения и отправки уведомления, подключение завершается ошибкой. У меня есть набор appxmanifest с разрешениями rfcomm для обоих, nuget добавил их.   -  person Stefan V    schedule 25.02.2015


Ответы (2)


Да, цель состоит в том, чтобы вы могли подключаться к Band и управлять им из фоновой задачи. Однако существует известная проблема с Band SDK Preview (1.3.10219-preview), которая препятствует созданию IBandClient в коде, работающем в рамках фоновой задачи.

person Phil Hoff -- MSFT    schedule 25.02.2015
comment
Спасибо, а где лучше обсудить такие проблемы и посмотреть известные баги? Также есть ли у нас дата следующего выпуска, который, как я полагаю, исправит это? - person Stefan V; 25.02.2015
comment
Забавно, мне сказали, что stackoverflow — официальное место для обсуждения Microsoft Band SDK! - person Stefan V; 20.03.2015
comment
Фил, это связано с общей моделью программирования фоновых задач для win store и wp81 winrt? Я заметил, что в SDK есть DLL, которая использует это: msdn.microsoft.com/en-us/library/windows/apps/, который не поддерживается магазином win при подписке на датчики. Подскажите, когда выйдет исправление? - person Iris Classon; 21.04.2015
comment
Нет, проблема с фоновой задачей была просто досадным побочным эффектом исправления, внесенного в последний момент в предварительной версии, чтобы избежать проблем с существующими соединениями Band, когда приложение приостановлено. Эта проблема будет исправлена ​​до официального выпуска SDK. В противном случае я не могу комментировать конкретные сроки. - person Phil Hoff -- MSFT; 21.04.2015

Фоновые задачи (и многое другое) были отсортированы в новом релизе, из-за которого SDK вышел из предварительного просмотра.

person Iris Classon    schedule 30.04.2015