我在winphone 8上编写了一个使用notifycation的应用程序。我的应用程序要求每30秒向服务器发送一次连续的URI。我的问题是,我使用了winphone的提醒,但它不能在提醒中使用webbrowser呼叫请求。
我的代码:
public MainPage()
{
InitializeComponent();
var reminder = new Reminder("MyReminder")
{
Content = "Sending uri to server...",
BeginTime = DateTime.Now.AddSeconds(30),
webBrowser1.Navigate(new Uri("http://nhomxe.vn/device_register?uri="http://...", UriKind.Absolute));
};
ScheduledActionService.Add(reminder);
}
答案 0 :(得分:0)
我认为您误解了Reminder
课程的内容以及如何使用它。
Reminder
类会向用户显示一条shell UI提示,并允许他们点按它以打开您的应用。 (类似于Alarm
,它还会显示用户界面,并允许您自定义播放的声音,但不支持直接链接到应用。)
您编写的代码无法编译,因为您编写的代码是在对象初始化程序中执行的,该代码初始化程序无法正常工作。您似乎也有字符串连接问题,但这可能只是一个虚假的引用(")。
如果您只是想要向URL端点发出请求,您也不需要在浏览器中加载它。
假设您在应用运行时每隔30秒就想向服务器发送一条消息,那么您可以使用Timer
执行此操作。
像这样:
var timer = new Timer(
state => new WebClient().DownloadStringAsync(new Uri("http://blah.blah/")),
null,
TimeSpan.FromSeconds(30),
TimeSpan.FromSeconds(30));
显然添加了错误处理等。
当您的应用未运行时,您的代码无法每30秒运行一次。如果您想在应用程序不在前台时执行某些操作,则需要查看使用后台代理。
答案 1 :(得分:0)
如果您想每30分钟获取一次信息,可以使用定期任务。