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 } /// <summary> /// 用SystemProperty.PhoneTalkingCallerNumber可以得到与手机通话的所有电话号码,包括来电及去电 /// </summary> /// <param name="sender"></param> /// <param name="args">args.NewValue即为来电/去电电话号码,为Null表示通话结束</param> 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事件,不知道原因是什么,希望了解的朋友解答一下~~

你可能感兴趣的:(object,null,Class,手机,电话)