【问题标题】:Get a notification when any of the windows phone contacts is added or updated添加或更新任何 Windows Phone 联系人时收到通知
【发布时间】:2013-11-10 02:18:42
【问题描述】:

在我的 Windows 手机应用程序中,我将所有联系人存储在一个单独的列表中,而不是在我需要有关特定联系人的详细信息时使用 Contacts.SearchAsync 方法获取。

现在我需要在用户更新、添加或删除任何联系人时收到通知,以便我可以保持我的列表更新。我将如何在 Windows 手机中执行此操作?

【问题讨论】:

  • 我理解正确吗? : 1. 第一次启动应用程序时,您会复制联系人。 2. 您关闭了应用程序(它不在后台运行) 3. 用户添加了一个联系人,您希望更新您的列表吗?
  • 除第二条语句外,一切都正确。我没有关闭应用程序,它只是在后台运行。
  • 类似于 ContentObserver(在 android 中)和 QContactManager::contactsAdded 事件(在黑莓中)

标签: c# windows-phone-8 windows-phone


【解决方案1】:

我不知道你是否可以在 WP 中添加这样的事件 - 我对此表示怀疑,如果我错了,请纠正我。
您可以尝试的一种解决方案是添加一个后台代理,该代理将定期检查更改。但这似乎是解决问题。
http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202942(v=vs.105).aspx

我还会记得@Toni Petrina 对此question 的回答:
"当应用程序处于后台模式时,所有类型的连接都会暂停。您的应用程序根本无法真正响应任何事件。

不幸的是,这是与操作系统隔离的沙盒应用模型的局限性。在后台时,它被挂起,没有传感器和连接。”

因此,当您离开您的应用程序时,它无法从操作系统获得通知。有些工作只能由上面链接中描述的背景代理来完成。
也许即将到来的 WP 8.1 会改变这件事。

【讨论】:

    【解决方案2】:

    简短回答:没有这样的通知或事件可用,您应该在应用启动时检查当前的联系人列表以了解更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-20
      相关资源
      最近更新 更多