我在Titanium Appcelerator Studio中发现了一个错误,当联系人对象具有电话号码的自定义标签时,phone
对象返回undefined
。
不幸的是,他们可能需要更多的时间来解决这个问题,但是我可以修改Objective-C的构建类的好消息,这里是提供人员信息的方法。
在/build/iphone/classes/TiContactsPerson.m
内+(NSDictionary*)multiValueLabels
{
if (multiValueLabels == nil) {
multiValueLabels =
[[NSDictionary alloc] initWithObjectsAndKeys:(NSString*)kABHomeLabel,@"home", // Generic labels
kABWorkLabel,@"work",
kABOtherLabel,@"other",
kABPersonPhoneMobileLabel,@"mobile", // Phone labels
kABPersonPhonePagerLabel,@"pager",
kABPersonPhoneWorkFAXLabel,@"workFax",
kABPersonPhoneMainLabel,@"main",
kABPersonPhoneIPhoneLabel,@"iPhone",
kABPersonPhoneHomeFAXLabel,@"homeFax",
kABPersonSocialProfileServiceFacebook,@"facebookProfile",// Social Profile Labels
kABPersonSocialProfileServiceFlickr,@"flickrProfile",
kABPersonSocialProfileServiceGameCenter,@"gameCenterProfile",
kABPersonSocialProfileServiceLinkedIn,@"linkedInProfile",
kABPersonSocialProfileServiceMyspace,@"myspaceProfile",
kABPersonSocialProfileServiceSinaWeibo,@"sinaWeiboProfile",
kABPersonSocialProfileServiceTwitter,@"twitterProfile",
kABPersonInstantMessageServiceAIM,@"aim", // IM labels
kABPersonInstantMessageServiceICQ,@"icq",
kABPersonInstantMessageServiceJabber,@"jabber",
kABPersonInstantMessageServiceMSN,@"msn",
kABPersonInstantMessageServiceYahoo,@"yahoo",
kABPersonInstantMessageServiceQQ,@"qq",
kABPersonInstantMessageServiceSkype,@"skype",
kABPersonInstantMessageServiceGoogleTalk,@"googletalk",
kABPersonInstantMessageServiceGaduGadu,@"gadugadu",
kABPersonInstantMessageServiceFacebook,@"facebook",
kABPersonMotherLabel,@"mother", // Relation labels
kABPersonFatherLabel,@"father",
kABPersonParentLabel,@"parent",
kABPersonSisterLabel,@"sister",
kABPersonBrotherLabel,@"brother",
kABPersonChildLabel,@"child",
kABPersonFriendLabel,@"friend",
kABPersonSpouseLabel,@"spouse",
kABPersonPartnerLabel,@"partner",
kABPersonManagerLabel,@"manager",
kABPersonAssistantLabel,@"assistant",
kABPersonAnniversaryLabel,@"anniversary", // Date label
kABPersonHomePageLabel,@"homepage", // URL label
nil];
}
return multiValueLabels;
}
它不包括用户为电话号码设置的自定义标签,这就是当联系人设置了自定义标签时phone
数组返回未定义的原因。
我的问题是如何获取用户创建的所有自定义标签并推送 它们在数组上面?
注意:我已经向appcelerator Jira报告了这个错误。
非常感谢任何建议