如何使用Cordova / Phonegap Contacts Plugin将出生日期联系人添加到Android

时间:2014-12-02 06:54:38

标签: android date cordova plugins contacts

我们在尝试使用Cordova for android添加生日时遇到问题,同时在电话簿中添加新联系人

以下是代码的一部分

contact = navigator.contacts.create({
"displayName": displayname
});

// store contact name
var contactName = new ContactName();
contactName.familyName = lastname;
contactName.givenName = firstname
contact.name = contactName;

contact.birthday = new Date("16 May 1984");

// save the contact
contact.save();

使用上面的代码,当在Android手机中查看数据时,生日保存为29-12-6731而不是预期的16-May-1984

我们尝试了所有可能的日期条目组合,即:1984年5月16日; 1984年5月16日; 1984年4月16日;新约会(1984,05,16)

但结果都是徒劳的。

还需要知道如何保存周年日期

在IOS中使用此插件时,保存日期为1984年5月15日(比预期少1天)。

2 个答案:

答案 0 :(得分:0)

看起来这个问题仍未解决:https://issues.apache.org/jira/browse/CB-1602

您在https://issues.apache.org/jira/browse/CB-8115下提交的错误不会添加任何新内容。

关于iOS上的日期,我建议您在Data对象中将小时,分钟,秒和毫秒设置为0.

答案 1 :(得分:0)

我被这件事困住了很长一段时间。发现由于毫秒和UTC时间的差异。这里有用的是在代码中为日期添加+1,并将小时,分钟,秒,毫秒设置为0,如我的情况所示。

     var datesplit = userDataObj.MemberDOB.split("-");
     var d = new Date(Number(datesplit[0]), Number(datesplit[1])-1,Number(datesplit[2])+1,0,0,0,0);