在Windows手机上提醒

时间:2014-07-17 03:35:48

标签: windows-phone-7 windows-phone-8 notifications mpns

我在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);
    }

2 个答案:

答案 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分钟获取一次信息,可以使用定期任务。