0

BGエージェントを実装したアプリがあります。BGエージェントがアップグレードの可用性を識別した場合、トースト通知を通じてユーザーに同じことを通知します。私はこれに関して1つの疑問があります。シナリオは次のようなものです。アプリを終了してBGで実行している場合は、トースト通知(TN)が表示され、すべてがスムーズで正常です。ただし、アプリがFGで実行されていて、BGでもBGがユーザーに通知するものがある場合、TNは表示されませんが、すべてがログファイルに記録されますが、デバイスのUIには何も表示されません。これは正常ですか?または何かをする必要がありますか?また、アプリケーションがFGで実行されているかどうかを検出する方法はありますか?もしそうなら、私はBGタスクを開始したくないのですが、これを実装できますか?

すべての回答と提案に感謝します。

ありがとうございました。

4

1 に答える 1

1

Thread.CurrentThread.IsBackgroundバックグラウンドまたはフォアグラウンドにあるかどうかを確認し、それに応じて作業を行うために使用できます。また、ご要望にThread.CurrentThread.IsAlive応じてご利用いただけます。ここで役立つ情報を見つけることができます: http://msdn.microsoft.com/en-us/library/h158zycw

アプリがバックグラウンドで使用されている場合は、Toast Notificationsそれ以外の場合はRaw Notifictions. Raw Notifications については、http: //msdn.microsoft.com/en-us/library/windowsphone/develop/hh202977 (v=vs.92).aspx から学習できます。

要約すると、アプリがBGの場合はトースト通知を使用し、アプリがFGの場合は直接通知を使用できます

私はこれを試していませんが、間違っていなければうまくいくはずです。また、メインアプリがバックグラウンドエージェントから実行されているかどうかを検出する方法には、これに関する同様の質問があります

スレッド オプションがうまく機能する場合は、 http://www.windowsphonegeek.com/articles/WP7-Application-Lifecycle-and-Tombstoningに記載されているアプリケーション状態プロパティを使用して、状態を確認および追跡することもできます。アプリ、つまりその BG または FG の場合。

于 2012-08-21T04:36:43.960 に答える