This plugin saves the contacts into the device.
cordova plugin add cordova-plugin-contacts-save
- iOS
Dont forget to add NSContactsUsageDescription
to your plist
.
You can add this in your config.xml
.
<platform name="ios">
...
<edit-config file="*-Info.plist" mode="merge" target="NSContactsUsageDescription">
<string>Used to save business cards</string>
</edit-config>
...
</platform>
// define contacts
var contacts = [
{
givenName: "Steve",
familyName: "Jobs",
},
];
// set default store container
var container = "";
// save contacts
window.ContactsSave.saveContacts(
contacts,
container,
(cookies) => {
// contacts saved
},
(error) => {
// error: NO_CONTACTS or NO_PERMISSON
}
);
export interface CNMutableContact {
namePrefix?: string;
givenName?: string;
familyName?: string;
organizationName?: string;
jobTitle?: string;
postalAddresses: CNLabeledValue<"home" | "work" | "other", CNPostalAddress>[];
phoneNumbers: CNLabeledValue<
"home" | "work" | "mobile" | "homeFax" | "workFax" | "otherFax" | "other",
CNPhoneNumber
>[];
emailAddresses: CNLabeledValue<"home" | "work" | "other", string>[];
urlAddresses: CNLabeledValue<"home" | "work" | "other", string>[];
imageData?: string;
note?: string;
}
export interface CNLabeledValue<L, V> {
label?: L;
value: V;
}
export interface CNPhoneNumber {
stringValue?: string;
}
export interface CNPostalAddress {
street?: string;
city?: string;
state?: string;
postalCode?: string;
ISOCountryCode?: string;
country?: string;
}