В этой статье я расскажу о создании контактов в Windows Phone с помощью Cordova или PhoneGap. Если вы впервые используете Cordova или PhoneGap, я бы рекомендовал прочитать « Начало работы с Cordova или PhoneGap» в Windows Phone.
Давайте напишем некоторый код для создания контакта:
Шаг 1: Откройте index.html в папке www и поместите ниже код.
<!DOCTYPE html>
<html>
<head>
<title>Getting Started Sample</title>
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript" charset="utf-8">
var init = function init() {
// Wait for Cordova to load
document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
function onDeviceReady() {
}
};
window.onload = init;
</script>
</head>
<body>
</body>
</html>
Шаг 2: Теперь измените метод onDeviceReady, как показано ниже, чтобы сохранить номер контактного телефона.
function onDeviceReady() {
var contact = navigator.contacts.create();
var phoneNumbers = [];
phoneNumbers[0] = new ContactField('work', '111-222-3333', false);
phoneNumbers[1] = new ContactField('mobile', '444-555-6666', true); // preferred number
phoneNumbers[2] = new ContactField('home', '777-888-9999', false);
contact.phoneNumbers = phoneNumbers;
contact.save(onSaveSuccess, onSaveError);
}
function onSaveSuccess(contact) {
alert("Save Success");
}
function onSaveError(contactError) {
alert("Error = " + contactError.code);
}
Теперь запустите приложение, и вы увидите, что номер телефона заполнен в контактных данных, как показано ниже.
Шаг 3: Чтобы сохранить электронную почту вместе с номером телефона, измените onDeviceReady, как показано ниже.
function onDeviceReady() {
var contact = navigator.contacts.create();
//Code to save phone number in Contact as discussed in step 2
var emails = [];
emails[0] = new ContactField('work', 'abc@outlook.com', false);
emails[1] = new ContactField('home', 'pqr@outlook.com', true); // preferred number
contact.emails = emails;
contact.save(onSaveSuccess, onSaveError);
}
function onSaveSuccess(contact) {
alert("Save Success");
}
function onSaveError(contactError) {
alert("Error = " + contactError.code);
}
Теперь запустите приложение, и вы заметите, что электронная почта заполнена контактной информацией, как показано ниже.
Шаг 4: Теперь, чтобы сохранить адреса, измените onDeviceReady, как показано ниже.
function onDeviceReady() {
var contact = navigator.contacts.create();
//Code to save phone number in Contact as discussed in step 2
//Code to save email in Contact as discussed in step 3
var addresses = [];
addresses[0] = new ContactAddress(false, 'work', 'My House No', 'My Street Address', 'My Locality', 'My Region', 'My PostalCode', 'My Country');
addresses[1] = new ContactAddress(false, 'home', 'My House No', 'My Street HAddress', 'My Locality', 'My Region', 'My PostalCode', 'My Country');
contact.addresses = addresses;
contact.save(onSaveSuccess, onSaveError);
}
function onSaveSuccess(contact) {
alert("Save Success");
}
function onSaveError(contactError) {
alert("Error = " + contactError.code);
}
Теперь запустите приложение, и вы увидите, что адрес заполнен в контактных данных, как показано ниже.
Шаг 5. Чтобы сохранить сведения об организации, URL-адрес и примечание, поместите приведенный ниже код в onDeviceReady.
function onDeviceReady() {
var contact = navigator.contacts.create();
//Code to save phone number in Contact as discussed in step 2
//Code to save email in Contact as discussed in step 3
//Code to save address in Contact as discussed in step 4
var organizations = [];
organizations[0] = new ContactOrganization(false, 'work', 'OrgName', 'OrgDept', 'OrgTitle');
contact.organizations = organizations;
contact.note = 'PhoneGap Note';
var urls = [];
urls[0] = new ContactField('work', 'http://www.abc.com');
contact.urls = urls;
contact.save(onSaveSuccess, onSaveError);
}
function onSaveSuccess(contact) {
alert("Save Success");
}
function onSaveError(contactError) {
alert("Error = " + contactError.code);
}
Теперь запустите приложение, и вы увидите, что веб-сайт, заметки и jobTitle заполнены контактными данными, как показано ниже. Название организации отображается вместе с именем контакта, которое вы увидите на следующем шаге.
Шаг 6: Теперь, чтобы сохранить имя контакта, поместите ниже код в onDeviceReady, как показано ниже.
function onDeviceReady() {
var contact = navigator.contacts.create();
//Code to save phone number in Contact as discussed in step 2
//Code to save email in Contact as discussed in step 3
//Code to save address in Contact as discussed in step 4
//Code to save email, notes and organization details in Contact as discussed in step 5
var name = new ContactName();
name.givenName = "Jane";
name.familyName = "FN";
name.middleName = "MN";
name.honorificPrefix = "Pr";
name.honorificSuffix = "Su";
contact.name = name;
contact.save(onSaveSuccess, onSaveError);
}
function onSaveSuccess(contact) {
alert("Save Success");
}
function onSaveError(contactError) {
alert("Error = " + contactError.code);
}
Теперь запустите приложение, и вы увидите, что имя контакта заполнено в контактной информации.
На этом заканчивается статья о сохранении контакта в windows phone с помощью cordova или PhoneGap.