随笔 - 249  文章 - 1  评论 - 1207  阅读 - 61万

Incoming call missed/rejected Reminder on Windows Mobile

IM软件上(QQ/MSN之类),人忙或者离开时,可以设置一定的信息或者回复一些消息,来告诉对方主人当前的状态。试想一下,如果老板组织开会,让我介绍最近研究的内容。正在兴致勃勃地讲解当中,突然来一个电话。这时,如果电话能够像IM软件那样,给对方一个提醒,类似于“我正在会议中,稍后回电”这样的消息,那样就不怕了。

codeplex上有一个开源项目SMSNotifier,可以在它的基础上,来做这方面的应用。下面讲讲实现这个功能所需的一些知识。

Microsoft.WindowsMobile.PocketOutlook

程序中所使用到的ContactAppointment都来源于这个类库Microsoft.WindowsMobile.PocketOutlook。更多信息,可以参考MSDN上的链接: http://msdn.microsoft.com/en-us/library/microsoft.windowsmobile.pocketoutlook.aspx

Microsoft.WindowsMobile.Status

获取漏接电话记录、约会信息,可以通过这个类库。更多信息,可以参考MSDN上的链接: http://msdn.microsoft.com/en-us/library/microsoft.windowsmobile.status.aspx

System.Xml.Serialization

我们可以将配置文件以.xml文件的格式存放起来,更多信息请参考MSDN上的链接: http://msdn.microsoft.com/en-us/library/system.xml.serialization.aspx

         实现时,主要就是在主窗体load时,将missedCalls_Changed这个函数添加到ChangeEventHandler中。missedCalls_Changed函数中处理发送短信给联系人,并且将这个漏接电话的事情作为一个新的Appointment,提示主人。

代码大家可以去SMSNotifier主页下载,这里讲讲如何利用WM6.1.4的模拟器和Cellular Emulator工具来测试。首先,打开Cellular Emulator,使其和我们使用的Device Emulator建立联系。具体方法可以参考我之前的文章“Ring Tone Manager on Windows Mobile”。运行程序,界面如下图1所示:

1:程序运行界面图

    然后,在Cellular Emulator中给Device Emulator拨打电话7272022,如下图2所示:

2Cellular Emulator中给Device Emulator拨打电话

    在Device Emulator中拒接电话以后,我们可以发现,Cellular EmulatorSMS中,Device Emulator发过来的一条SMS,如下图3所示:

3SMS提示信息

    同时,在Device EmulatorAppointment目录中,发现一条信息,如下图4所示:

4Appointment提示信息

    其配置信息,是放在Device EmulatorApplicationData目录中,其内容如下:

 

Code

 

 

  大家有兴趣可以试试!Good Luck!

参考文章:SMSNotifier

 

posted on   施炯  阅读(1973)  评论(14编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
< 2009年1月 >
28 29 30 31 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
1 2 3 4 5 6 7

点击右上角即可分享
微信分享提示