添加谷歌联系人不起作用

本文关键字:不起作用 联系人 谷歌 添加 | 更新日期: 2023-09-27 18:18:10

我让这段代码"工作"(读不抛出异常)。但这个联系人没有被添加到我的gmail联系人中(我的android手机也没有同步联系人)。

请注意,我可以正确读取联系人,因此凭证是正确的。

我读到我应该检查请求上的状态,但我看到的唯一状态是ContactEntry的属性,它总是null。

这是一个用于测试的控制台应用程序。

public static void AddContact(ContactDetail contact)
        {
            GContactService = new ContactsService("Contact Infomation");
            GContactService.setUserCredentials("myemail@gmail.com", "mypassword");
            ContactEntry newEntry = new ContactEntry();
            newEntry.Title.Text = contact.Name;
            newEntry.Name = new Name() { FullName = "Tristan Savage", GivenName = "Tristan", FamilyName = "Savage"};
            EMail primaryEmail = new EMail(contact.EmailAddress1);
            primaryEmail.Primary = true;
            primaryEmail.Rel = ContactsRelationships.IsWork;
            newEntry.Emails.Add(primaryEmail);
            PhoneNumber phoneNumber = new PhoneNumber(contact.Phone);
            phoneNumber.Primary = true;
            phoneNumber.Rel = ContactsRelationships.IsMobile;
            newEntry.Phonenumbers.Add(phoneNumber);
            PostalAddress postalAddress = new PostalAddress();
            postalAddress.Value = contact.Address;
            postalAddress.Primary = true;
            postalAddress.Rel = ContactsRelationships.IsCompanyMain;
            newEntry.PostalAddresses.Add(new StructuredPostalAddress() { City = "montreal", Label = "Bureau"});
            newEntry.Content.Content = contact.Details;
            Uri feedUri = new Uri(ContactsQuery.CreateContactsUri("default")); //default
            ContactEntry createdEntry = (ContactEntry)GContactService.Insert(feedUri, newEntry); 
        }

添加谷歌联系人不起作用

我终于想通了。为了使联系人能够访问移动设备,需要GroupMembership !

这是缺失的部分:

var groupMembership = new GroupMembership
{
    HRef = "http://www.google.com/m8/feeds/groups/" + utilisateur.CourrielGmailContacts + "/base/6"
};
newEntry.GroupMembership.Add(groupMembership);

尝试注释一些行。只有姓名和电子邮件,你应该能够创建你的联系人。

我可以在这里用。net的例子创建一个联系人:https://developers.google.com/google-apps/contacts/v3/?hl=fr creating_contacts

with Request这样初始化:ContactsRequest Request = new ContactsRequest(new RequestSettings("appName", "user@gmail.com", "password"));

请注意,您的新联系人没有关联到一个组。所以你不会看到联系人出现在"我的联系人"/"我的联系人"中。你应该在"Other contacts"/" aures contacts"中看到它