【问题标题】:wp7 background process during application runs应用程序运行期间的wp7后台进程
【发布时间】:2012-05-10 15:22:09
【问题描述】:

我有一个包含许多页面的项目。无论我的应用程序的情况如何,我都想定期将信息导入我的数据库。

我试图将我的代码放在 App.xaml.cs 中,但它只保存一次数据(我把它放在启动中并在构造函数中尝试。我的方法是获取设备 ID 的位置,就像

void watcher_PositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e)
{
    Location loc = new GeoCoordinate(e.Position.Location.Latitude, e.Position.Location.Longitude);

    //Send Data to Database
    dclient.CreateUserLocationCompleted += new EventHandler<System.ComponentModel.AsyncCompletedEventArgs>(dclient_CreateUserLocationCompleted);
    dclient.CreateUserLocationAsync(1, loc.Latitude, loc.Longitude);
} 

而我的观察者位置改变是在构造函数内部。

if (watcher == null)
{
    watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High)
}

MovementThreshold = getSelectedDeviceLocationFrequencyFromInternalFolder();

watcher.PositionChanged += new EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(watcher_PositionChanged);
watcher.Start();

并在 App.xaml.cs 中全局定义

如何在程序运行时始终定期运行它?还有什么办法吗?谢谢(总而言之,我想定期将位置数据插入我的数据库。)

【问题讨论】:

    标签: windows-phone-7 backgroundworker app.xaml


    【解决方案1】:

    您需要在应用程序启动时启动一个线程,该线程在它想要的任何时间休眠(或在来自应用程序的信号时唤醒 - 当接收到新值时)并将数据写入其中的数据存储.

    【讨论】:

      猜你喜欢
      • 2012-11-10
      • 2023-03-28
      • 2017-04-14
      • 1970-01-01
      • 2020-08-11
      • 2021-04-20
      • 1970-01-01
      • 2013-08-09
      • 2014-01-10
      相关资源
      最近更新 更多