1

Я хочу добавить новый контакт из своего приложения для Windows 8 Store и сохранить его, чтобы он появился в приложении «Люди», которое поставляется вместе с ОС.Использование ContactPickerUI в приложении для Windows 8 Store

В документации указано, что существует класс ContactPickerUI, который имеет способ public AddContactResult AddContact(string id, Contact contact), и это похоже на то, что мне нужно для этого.

Проблема заключается в том, что я не знаю, как получить ссылку на объект ContactPickerUI, потому что класс не может быть создан.

Если я пытаюсь сделать

var contactPickerUi = new ContactPickerUI(); 

Я получаю сообщение об ошибке, говорящее: «Тип„Windows.ApplicationModel.Contacts.Provider.ContactPickerUI“не имеет конструкторов, определенных»

Там в пример кода в Интернете от Microsoft, где они используют ContactPickerUIhere.

Проблема заключается в том, что в этом коде они получают ссылку на этот объект, когда приложение активируется из внешнего источника (т. Е. Это цель для общего доступа), и это не относится к моему приложению.

Есть ли способ получить доступ к ContactPickerUI, когда ваше приложение запускается нормально? Или есть другой способ программно добавить новый контакт, не разделяя его через панель прелестей?

ответ

3

Я предполагаю, что вы неправильно поняли цель ContactPickerUI. API не используется для добавления контактов, чтобы они отображались в приложении «Люди» (для этого вам нужно будет использовать API одной из служб «Люди», из которых извлекаются контакты), но для добавления контактов в список, который будет отображаться пользователю, когда он выберет ваше приложение в качестве поставщика контактов. Вот почему вы можете получить экземпляр класса, когда ваше приложение активируется с помощью ActivationKind.ContactPicker.

+0

Звучит честно, спасибо! Но как я могу «использовать API одного из сервисов« Приложение «Люди», которое извлекает контакты из »? О каких услугах вы говорите? –

+0

@alex_and_ra Я говорю об аккаунтах, которые вы настраиваете в приложении «Люди». У него нет собственного локального хранилища, это зависит от сервисов directcotry, таких как Google, Hotmail, Facebook ...). Вам нужно будет поговорить напрямую с одним из них. –

Смежные вопросы