为什么我不能将iPhone联系人视为Titanium Person对象?

时间:2011-07-04 15:58:38

标签: iphone debugging titanium appcelerator-mobile javascript-objects

我只是想在我的日志中看到Ti.Contacts.Person对象,以便我可以看到XHR POST中将发送的内容。我从以下开始:

var contacts = Ti.Contacts.showContacts({
    selectedPerson:function(e) {
        var contact = e.person;
        Ti.API.debug({message:contact.firstName}); // successfully produces 'Micah'
    }
});

如果我尝试查看整个对象,应用程序崩溃了:

Ti.API.debug({message:contact});

产生的错误是:Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFDictionary setObject:forKey:]: attempt to insert nil value (key: id)'

我还试图为调试方法提供一个JSON字符串,但它是空的:

var contactString = JSON.stringify(contact);
Ti.API.debug({message:contactString}); // results in '{}'

存储e.person.recordId然后将其用于getPersonByID无济于事。感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

无法完成。

您需要逐个从对象中拉出每个属性,以查看联系对象中的内容。

http://developer.appcelerator.com/apidoc/mobile/latest/Titanium.Contacts.Person-object.html