私は自分のアプリケーションに C# を使用しています。ユーザーが PC にログインした直後に、ライブ タイルが更新を開始することが重要です。今のところ、ライブ タイルの更新に時間トリガーを使用しているため、更新は 15 分以内に開始されます。タスクを手動でトリガーする方法はありますか、またはユーザーがシステムにログオンしたときにライブ タイルの更新を開始する方法は他にありますか?
質問する
302 次
3 に答える
0
バックグラウンドタスクを手動で呼び出すことはできませんが、バックグラウンドタスクが実行するコードを使用して共有ライブラリを作成し、バックグラウンドタスクから直接呼び出すことができます。次に、アプリケーションから手動でトリガーする場合はいつでも、そのコードを手動で呼び出すことができます。
于 2012-11-29T17:09:58.920 に答える
0
UserPresent SystemTriggerTypeは、あなたが求めているものかもしれません。私が考えているのは、時間トリガーとシステムトリガーの両方を使用することです。したがって、15分ごとに、ユーザーがデバイスのロックを解除したときに実行します。SystemTrigger thoを使用すると、CPU時間はそれほど長くなるとは思いませんが、何もないよりはましです http://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.background.systemtriggertype .aspx
于 2012-12-02T08:35:25.357 に答える
0
DispatcherTimer は、設定した間隔でイベントを発生させるのに役立ちます。App() コンストラクターにコードを追加できます。
// _dispatcherTimer is probably a class level variable.
DispatcherTimer _dispatcherTimer;
// How often
uint _DoSomethingInterval = 500;
// Set up a DispatchTimer
_dispatcherTimer = new DispatcherTimer();
_dispatcherTimer.Tick += DoSomething;
// If you like lambdas, do this
//_dispatcherTimer.Tick += (sender, object ) =>
// { Debug.WriteLine("time passed so do something"); }
_dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, (int)_desiredReportInterval);
// The callback for the timer
private void DoSomething(object sender, object args)
{
Debug.WriteLine("time passed so do something");
}
于 2012-12-04T03:05:58.523 に答える