applican

マイページに戻る

Contacts

端末の連絡先情報を制御します。

機能

連絡先オブジェクトを作成する 【 create 】

連絡先を検索する 【 find 】

利用用途

端末のアドレス帳に連絡先を追加する機能や、アドレス帳の中から特定の連絡先を検索する機能を実装したい場合、こちらの機能をご利用ください。

【対応ランタイムバージョン】

ランタイムのバージョン毎に最適化したサンプルをダウンロードしてご使用ください。

サンプル Contacts
サンプル Contacts
サンプル Contacts
サンプル Contacts
サンプル Contacts

プロパティ

id : String 固定のIDです。
displayName : String 連絡先の名称です。
name : ContactName 個人名に関する情報です。
nickname : String ニックネームです。
phoneNumbers : ContactField[] 連絡先のすべての電話番号の配列です。
emails : ContactField[] 連絡先のすべてのメールアドレスの配列です。
addresses : ContactAddress 連絡先のすべての住所の配列です。
ims : ContactField[] 連絡先のすべてのIMアドレスの配列です。
organizations : ContactOrganization 連絡先のすべての組織名の配列です。
birthday : Date 連絡先の誕生日です。
note : String 連絡先のメモです。
photos : ContactField[] 連絡先の写真の配列です。
categories : ContactField[] 連絡先のユーザー定義カテゴリーの配列です。
urls : ContactField[] 連絡先に関連したURLの配列です。

メソッド

create

メソッド説明

create(Contact contact) : Contact

連絡先オブジェクトを作成します。

このメソッドで作成した連絡先オブジェクトは、連絡先として保存されません。連絡先オブジェクトを保存するには、Contact.saveメソッドで保存してください。

パラメータ

contact : Contact 連絡先を指定します。

Return

Contact 連絡先オブジェクトを返却します。

サンプルコード

//連絡先を作成
function createContact(){
	var myContact = applican.contacts.create({"displayName": "Test User"});
	myContact.note = "この連絡先のメモ";

	var dump = "createContact\n";
	dump += myContact.displayName+"\n";
	dump += myContact.note+"\n";
	document.getElementById("dumpAreaContacts").value =dump;
}

find

メソッド説明

find(ContactFields contactFields, Function<Contact> successCallback, Function errorCallback, ContactFindOptions options)

連絡先を検索します。

ContactFields に指定した項目だけが、Callbackされます。

ContactFields に空を指定した場合は、idプロパティーのみを持つ空のContactオブジェクト配列が作成されます。

ContactFields の値が["*"]の場合は、全ての項目が返されます。

問い合わせの際には、 ContactFindOptions.filter を用いて検索条件を絞ることが出来ます。

パラメータ

contactFields : ContactFields 検索結果に格納されるフィールドを指定します。
successCallback : Function<Contact> 連絡先への問い合わせに成功した場合にCallbackされます。
errorCallback : Function 連絡先への問い合わせに失敗した場合にCallbackされます。
options : ContactFindOptions 連絡先情報に絞り込み検索を行うための検索オプションを指定します。

Return

void

サンプルコード

//連絡先を検索
function findContact(){
	var options = new ContactFindOptions();
	options.filter = "鈴木";
	options.multiple = true;
	//var fields = ["displayName", "name"];
	var fields = ["*"];
	applican.contacts.find(fields, findContact_success, findContact_error, options);
}
function findContact_success(contacts){
	var dump = "findContact_success\n";

	objectdump(contacts, document.getElementById('objectdumparea'));

	for (var i=0; i<contacts.length; i++) {
		dump += contacts[i].displayName+"\n";
		if(contacts[i].urls && contacts[i].urls.length>0){
			dump += contacts[i].urls[0].value+"\n";
		}
	}
	document.getElementById("dumpAreaContacts").value =dump;
}
function findContact_error(){
	var dump = "findContact_error\n";
	document.getElementById("dumpAreaContacts").value =dump;
}

//連絡先を保存
function saveContact(){
	var myContact = applican.contacts.create();
	myContact.displayName = "Test displayName 1";
	myContact.nickname = "Test nickname 1";
	myContact.note = "この連絡先のメモ";

	var name = new ContactName();
	name.givenName = "Jane";
	name.familyName = "Doe";
	myContact.name = name;

	var address = new ContactAddress();
	address.pref = false;
	address.type = "home";
	address.formatted = "";
	address.streetAddress = "大崎 1-1-1";
	address.locality = "品川区";
	address.region = "東京都";
	address.postalCode = "1410032";
	address.country	= "日本";

	var address2 = new ContactAddress();
	address2.pref = false;
	address2.type = "work";
	address2.formatted = "";
	address2.streetAddress = "大崎 2-2-2";
	address2.locality = "品川区";
	address2.region	= "東京都";
	address2.postalCode = "1410032";
	address2.country = "日本";
	myContact.addresses	= [address, address2];

	var phone = new ContactField("home", "1234567890", false);
	var phone2 = new ContactField("work", "77777777777", false);
	var phone3 = new ContactField("カスタム", "0399998888", false);
	myContact.phoneNumbers = [phone, phone2, phone3];

	var url = new ContactField("home", "http://google.co.jp/", false);
	var url2 = new ContactField("work", "http://www.yahoo.co.jp/", false);
	myContact.urls = [url, url2];

	var email = new ContactField("home", "suzukiアットマークapplican.biz"
	var email2 = new ContactField("work", "taroアットマークapplican.biz"
	myContact.emails = [email, email2];

	var im = new ContactField("Skype", "1234", false);
	var im2 = new ContactField("Facebook", "4444", false);
 	myContact.ims = [im, im2];

	var organization = new ContactOrganization();
	organization.type = "work";
	organization.name = "株式会社まるまる";
	organization.department = "営業部";
	organization.title = "部長";
	myContact.organizations = [organization];

	myContact.birthday = new Date("1977/01/10");

	var photo = new ContactField("url", "http://picture.jp/images/me.jpg");

	myContact.photos = [photo];

	myContact.save(saveContact_onSuccess,saveContact_onError);
}
function saveContact_onSuccess(){
	var dump = "saveContact_onSuccess\n";
	document.getElementById("dumpAreaContacts").value =dump;
}
function saveContact_onError(){
	var dump = "saveContact_onError\n";
	document.getElementById("dumpAreaContacts").value =dump;
}