3

最近、Windows Phone 8.1 用の Microsoft Band アプリケーションを開始しました。アプリケーションは基本的に UV センサーを使用します。しかし、ここでの問題は UV ではなく、単に通知を送信することです。

Bandに通知を送信するコードは次のようになります (例外の場所):

await bandClient.NotificationManager.SendMessageAsync(tileGuid, "Title", "Body", DateTimeOffset.Now, MessageFlags.ShowDialog);

完全な例外は次のとおりです。

(Exception parameter is below this question)
Handled = false
"Device status code: 0xA0D4000A received"

ファイルApp.gicsからスローされます。

#if DEBUG && !DISABLE_XAML_GENERATED_BREAK_ON_UNHANDLED_EXCEPTION
        UnhandledException += (sender, e) =>
        {
            if (global::System.Diagnostics.Debugger.IsAttached) global::System.Diagnostics.Debugger.Break();
        };
#endif

この例外を Web で検索しましたが、結果はありませんでした。奇妙な部分は、実際にある時点でこのコードが機能し、通知を送信したことです。また、「トランスポート」と「ストリーム」に関するいくつかの例外も送信されていますが、現在、これらの例外を再度生成することはできません。

私はやった

  1. バンドを工場出荷時の状態にリセットして再接続します (登録解除とその他のものも)。
  2. 電話を再起動して、他の電話を試してください。
  3. 通知をコード内で後または前にスローするように移動しました。

誰かがたまたまアイデアなどを持っていますか、何ができるのか、何が間違っている可能性がありますか

例外パラメータ:

+       Exception   {Microsoft.Band.BandOperationException: Device status code: 0xA0D4000A received.
   at Microsoft.Band.BandClient.CheckStatus(CargoStatus status, CommandStatusHandling statusHandling)
   at Microsoft.Band.BandClient.SendNotification[T](UInt16 notificationId, Guid& tileId, T& notificationInfo, PooledBuffer payload)
   at Microsoft.Band.BandClient.SendMessage(Guid& tileId, String title, String body, DateTimeOffset timestamp, MessageFlags flags, CancellationToken token)
   at Microsoft.Band.BandClient.<>c__DisplayClass11.<SendMessageAsync>b__10()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Uvicorn.PivotPage.<ThrowNotification>d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__3(Object state)
   at System.Threading.WinRTSynchronizationContext.Invoker.InvokeCore()}    System.Exception {Microsoft.Band.BandOperationException}
4

2 に答える 2

0

SendMessageAsync() メソッドに渡された GUID を持つタイルが最初にバンドに追加されていることを確認してください (たとえば、出荷時設定へのリセット後)。

于 2015-05-15T21:48:24.610 に答える