Moblile下记录手机通话号码

可以通过SystemProperty.PhoneTalkingCallerNumber属性进行处理,关键代码如下:

  public partial class Form1 : Form { SystemState test; public Form1() { InitializeComponent(); #region 挂载事件 test = new SystemState(SystemProperty.PhoneTalkingCallerNumber); test.Changed += new ChangeEventHandler(test_Changed); #endregion } ///

/// 用SystemProperty.PhoneTalkingCallerNumber可以得到与手机通话的所有电话号码,包括来电及去电 /// /// /// args.NewValue即为来电/去电电话号码,为Null表示通话结束 void test_Changed(object sender, ChangeEventArgs args) { if (args.NewValue != null) MessageBox.Show(string.Format("TalkingNumber:{0},来电时间:{1}", args.NewValue.ToString(), DateTime.Now.ToLongTimeString())); else MessageBox.Show(string.Format("结束时间:{0}", DateTime.Now.ToLongTimeString())); } }

有一个小小的疑问,这个 SystemState 变量test若是定义在构造函数public Form1()中,即不响应Changed事件,不知道原因是什么,希望了解的朋友解答一下~~

你可能感兴趣的:(Mobile)