** 참고 사이트 **
PhoneGap 사이트의 API : http://docs.phonegap.com/plugin-apis/
튜토리얼 사이트 : http://www.w3ii.com/cordova/default.html
두가지 파일(index.html, index.js)만 수정하면 된다.
: index.html은 프로젝트 디렉터리로 이동해서 www 폴더를 열면 존재하고
: index.js는 .js가 붙은거 보면 알겠지만 www폴더 밑에 js폴더 내에 존재한다.
작업은 html 만드는 것처럼 하면 된다.
[ Example ] 주소록 사용하기(안드로이드)
1. plugin 추가
>>cordova plugin add cordova-plugin-contacts
2. index.html 문서에 버튼 두개 추가
<button id = "createContact">주소록에 추가</button><br>
<button id = "findContact">주소록에서 찾기</button><br>
<button id = "deleteContact">주소록에서 삭제</button><br>
3. index.js 문서에서 버튼값 찾아서 이벤트 걸기(onDeviceReady: function() { (여기에 주든지) }
initialize: function() {
document.getElementById("createContact").addEventListener("click", createContact);
document.getElementById("findContact").addEventListener("click", findContact);
document.getElementById("deleteContact").addEventListener("click", deleteContact);
}
4. index.js 문서에서 이벤트 함수 구현 (제일 끝에 추가)
// 추가 함수
function createContact() {
var myContact = navigator.contacts.create({"displayName": "Test User"});
myContact.save(contactSuccess, contactError);
function contactSuccess() { alert("Contact is saved!"); }
function contactError(message) { alert('Failed because: ' + message); }
}
// 찾기 함수
function findContact() {
var options = new ContactFindOptions();
options.filter = ""; // ""은 전체 출력
options.multiple = true;
fields = ["displayName"];
navigator.contacts.find(fields, contactfindSuccess, contactfindError, options);
function contactfindSuccess(contacts) {
for (var i = 0; i < contacts.length; i++) { alert("Display Name = " + contacts[i].displayName); }
}
function contactfindError(message) { alert('Failed because: ' + message); }
}
// 삭제 함수
function deleteContact() {
var options = new ContactFindOptions();
options.filter = "Test User";
options.multiple = false;
fields = ["displayName"];
navigator.contacts.find(fields, contactfindSuccess, contactfindError, options);
function contactfindSuccess(contacts) {
var contact = contacts[0];
contact.remove(contactRemoveSuccess, contactRemoveError);
function contactRemoveSuccess(contact) { alert("Contact Deleted"); }
function contactRemoveError(message) { alert('Failed because: ' + message); }
}
function contactfindError(message) { alert('Failed because: ' + message); }
}