Windows Phone 8中的通话记录功能

时间:2013-07-12 06:37:41

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

我正在开发Windows Phone 8中的VoIP应用程序(Dialer),在该应用程序中包含拨号盘,联系人,通话记录,我已经创建了拨号盘和联系人列表,我需要在该应用程序中开发一个呼叫记录功能。我很难为Windows Phone 8创建一个呼叫记录,请帮助

1 个答案:

答案 0 :(得分:0)

这是一个创建XML文件的类,该文件包含所有调用的日志。您没有足够地指定问题或者您想要做什么,或者您已尝试过什么。所以这里是你应该实现什么的想法:

public class Logger
{
private static string logPath;
public Logger()
{
    logPath = "/Logs/log.xml";
}

public void LogData(string contactName, string duration)
{
    Object thisLock = new Object();
    logPath += DateTime.Now.ToShortDateString().Replace('.', '_') + ".log";
    XmlDocument doc = new XmlDocument();

    lock (thisLock)
    {
        try
        {
            XmlNode root = null;

            if (File.Exists(logPath))
            {
                doc.Load(logPath);
                root = doc.SelectSingleNode("/Call");
            }
            else
            {
                doc.AppendChild(doc.CreateXmlDeclaration("1.0", "UTF-8", null));
                root = doc.AppendChild(doc.CreateElement("Call"));
            }

            XmlElement call = doc.CreateElement("call");
            root.AppendChild(call);

            XmlElement xcontactName = doc.CreateElement("contactName");
            xcontactName.InnerText = contactName;
            call.AppendChild(xcontactName);

            XmlElement xdate = doc.CreateElement("date");
            xdate.InnerText = DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss");
            call.AppendChild(xdate);

            XmlElement xduration = doc.CreateElement("duration");
            xduration.InnerText = duration;
            call.AppendChild(xduration);

            doc.Save(logPath);
        }
        catch (Exception e)
        {
            Debug.WriteLine(e.Message);
        }
    }
}