You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ld...@apache.org on 2014/07/07 19:50:06 UTC

[09/13] Lisa testing pulling in plugins for plugin: cordova-plugin-contacts

http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/blob/efb6b948/doc/ko/index.md
----------------------------------------------------------------------
diff --git a/doc/ko/index.md b/doc/ko/index.md
new file mode 100644
index 0000000..f2f410e
--- /dev/null
+++ b/doc/ko/index.md
@@ -0,0 +1,668 @@
+<!---
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+
+# org.apache.cordova.contacts
+
+장치 연락처 데이터베이스에 대 한 액세스를 제공합니다.
+
+**경고**: 중요 한 개인 정보 보호 문제를 제기 하는 연락처 데이터의 수집 및 사용 합니다. 응용 프로그램의 개인 정보 보호 정책 응용 프로그램 연락처 데이터를 사용 하는 방법 및 다른 당사자와 함께 공유 하는 여부를 토론 해야 한다. 연락처 정보 누구와 통신 하는 사람이 사람들 보여 때문에 민감한으로 간주 됩니다. 따라서 애플 리 케이 션의 개인 정보 보호 정책 뿐만 아니라 강하게 해야 장치 운영 체제는 이렇게 이미 하지 않는 경우 응용 프로그램 액세스 또는 연락처 데이터를 사용 하기 전에 그냥--시간 통지를 제공 합니다. 그 통지는 (예를 들어, **확인** 및 **아니오**선택 제시) 하 여 사용자의 허가 취득 뿐만 아니라, 위에서 언급 된 동일한 정보를 제공 해야 합니다. Note 일부 애플 리 케이 션 장 터 그냥--시간 공지 및 연락처 데이터에 액세�
 �� 하기 전에 사용자의 허가 받아야 응용 프로그램에 필요할 수 있습니다. 연락처 데이터는 사용자의 혼동을 방지할 수의 사용 및 연락처 데이터의 인식된 오용 명확 하 고 이해 하기 쉬운 사용자 경험. 자세한 내용은 개인 정보 보호 가이드를 참조 하십시오.
+
+## 설치
+
+    cordova plugin add org.apache.cordova.contacts
+    
+
+### 파이어 폭스 OS 단점
+
+[참고 문서][1]에 설명 된 대로 **www/manifest.webapp** 를 만듭니다. 관련 부여할 추가 합니다. [참고 문서][2]에 "권한"-webapp 유형을 변경 하려면 필요가 하다. **경고**: 모든 훌륭한 애플 리 케이 션 인라인 스크립트를 금지 하는 [콘텐츠 보안 정책][3] 을 적용 합니다. 다른 방법으로 응용 프로그램을 초기화 합니다.
+
+ [1]: https://developer.mozilla.org/en-US/Apps/Developing/Manifest
+ [2]: https://developer.mozilla.org/en-US/Apps/Developing/Manifest#type
+ [3]: https://developer.mozilla.org/en-US/Apps/CSP
+
+    "type": "privileged",
+    "permissions": {
+        "contacts": {
+            "access": "readwrite",
+            "description": "Describe why there is a need for such permission"
+        }
+    }
+    
+
+### 윈도우 8 단점
+
+윈도우 8 연락처는 읽기 전용입니다. 코르 도우 바 API 연락처를 통해 하지 쿼리/검색할 수 있습니다, 사용자 알려 '사람' 애플 리 케이 션을 열 것 이다 contacts.pickContact에 대 한 호출으로 연락처를 선택 하 여 사용자 연락처를 선택 해야 합니다. 반환 된 연락처는 읽기 전용 응용 프로그램을 수정할 수 없습니다.
+
+## navigator.contacts
+
+### 메서드
+
+*   navigator.contacts.create
+*   navigator.contacts.find
+*   navigator.contacts.pickContact
+
+### 개체
+
+*   연락처
+*   담당자 이름
+*   ContactField
+*   ContactAddress
+*   ContactOrganization
+*   ContactFindOptions
+*   ContactError
+*   ContactFieldType
+
+## navigator.contacts.create
+
+`navigator.contacts.create`메서드는 동기적, 및 새로운 반환 합니다 `Contact` 개체.
+
+이 메서드를 호출 해야 장치 연락처 데이터베이스에 연락처 개체를 유지 하지 않습니다는 `Contact.save` 방법.
+
+### 지원 되는 플랫폼
+
+*   안 드 로이드
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+
+### 예를 들어
+
+    var myContact = navigator.contacts.create({"displayName": "Test User"});
+    
+
+## navigator.contacts.find
+
+`navigator.contacts.find`장치 연락처 데이터베이스 쿼리 및의 배열을 반환 메서드가 비동기적으로 실행 될 `Contact` 개체. 결과 객체에 전달 되는 `contactSuccess` **contactSuccess** 매개 변수로 지정 된 콜백 함수.
+
+**ContactFields** 매개 변수는 검색 한정자로 사용할 필드를 지정 합니다. 길이가 0 인 **contactFields** 매개 변수 유효 하지 않습니다 및 결과 `ContactError.INVALID_ARGUMENT_ERROR` . **ContactFields** 값이 `"*"` 모든 연락처 필드를 반환 합니다.
+
+**ContactFindOptions.filter** 문자열 연락처 데이터베이스를 쿼리할 때 검색 필터로 사용할 수 있습니다. 제공 된, 대/소문자, 부분 값 일치 **contactFields** 매개 변수에 지정 된 각 필드에 적용 됩니다. *모든* 지정 된 필드의 일치 하는 경우 연락처 반환 됩니다. 사용 하 여 **contactFindOptions.desiredFields** 매개 변수 속성 문의 제어를 다시 반환 해야 합니다.
+
+### 매개 변수
+
+*   **contactSuccess**: 연락처 개체의 배열에 표시 되는 성공 콜백 함수는 데이터베이스에서 반환 된. [필수]
+
+*   **contactError**: 오류 콜백 함수에 오류가 발생할 때 호출 됩니다. [선택 사항]
+
+*   **contactFields**: 검색 한정자로 사용 하는 필드에 문의. *(DOMString[])* [필수]
+
+*   **contactFindOptions**: navigator.contacts 필터링 옵션을 검색 합니다. [선택 사항] 키 다음과 같습니다.
+
+*   **필터**: 검색 문자열 navigator.contacts를 찾는 데 사용 합니다. *(DOMString)* (기본:`""`)
+
+*   **여러**: 여러 navigator.contacts 찾기 작업을 반환 합니다 경우 결정 합니다. *(부울)* (기본:`false`)
+    
+    *   **desiredFields**: 연락처 필드를 다시 반환 합니다. 그 결과 지정 된 경우 `Contact` 만이 필드의 값을 보유 하는 개체. *(DOMString[])* [선택 사항]
+
+### 지원 되는 플랫폼
+
+*   안 드 로이드
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+
+### 예를 들어
+
+    function onSuccess(contacts) {
+        alert('Found ' + contacts.length + ' contacts.');
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    // find all contacts with 'Bob' in any name field
+    var options      = new ContactFindOptions();
+    options.filter   = "Bob";
+    options.multiple = true;
+    options.desiredFields = [navigator.contacts.fieldType.id];
+    var fields       = [navigator.contacts.fieldType.displayName, navigator.contacts.fieldType.name];
+    navigator.contacts.find(onSuccess, onError, fields, options);
+    
+
+## navigator.contacts.pickContact
+
+`navigator.contacts.pickContact`메서드가 단일 연락처 선택 문의 선택 시작. 결과 개체에 전달 되는 `contactSuccess` **contactSuccess** 매개 변수로 지정 된 콜백 함수.
+
+### 매개 변수
+
+*   **contactSuccess**: 단일 연락처 개체와 호출 되는 성공 콜백 함수. [필수]
+
+*   **contactError**: 오류 콜백 함수에 오류가 발생할 때 호출 됩니다. [선택 사항]
+
+### 지원 되는 플랫폼
+
+*   안 드 로이드
+*   iOS
+*   Windows Phone 8
+*   윈도우 8
+
+### 예를 들어
+
+    navigator.contacts.pickContact(function(contact){
+            console.log('The following contact has been selected:' + JSON.stringify(contact));
+        },function(err){
+            console.log('Error: ' + err);
+        });
+    
+
+## 연락처
+
+`Contact`개체는 사용자의 연락처를 나타냅니다. 연락처 생성 수, 저장 또는 장치 연락처 데이터베이스에서 제거 합니다. 연락처도 검색할 수 있습니다 (개별적으로 또는 일괄적으로) 데이터베이스에서 호출 하 여는 `navigator.contacts.find` 방법.
+
+**참고**: 모든 연락처 필드 위에 나열 된 모든 장치 플랫폼에서 지원 됩니다. 자세한 내용은 각 플랫폼의 *단점이* 섹션을 확인 하시기 바랍니다.
+
+### 속성
+
+*   **id**: 글로벌 고유 식별자. *(DOMString)*
+
+*   **displayName**: 최종 사용자에 게 표시에 적합이 연락처의 이름. *(DOMString)*
+
+*   **이름**: 사람 이름의 모든 구성 요소를 포함 하는 개체. *(담당자 이름)*
+
+*   **별명**: 캐주얼 이름 연락처 주소입니다. *(DOMString)*
+
+*   **phoneNumbers**: 모든 연락처의 전화 번호의 배열. *(ContactField[])*
+
+*   **이메일**: 모든 연락처의 전자 메일 주소의 배열. *(ContactField[])*
+
+*   **주소**: 모든 연락처의 주소 배열. *(ContactAddress[])*
+
+*   **ims**: 모든 연락처의 IM 주소 배열. *(ContactField[])*
+
+*   **조직**: 다양 한 모든 연락처의 조직. *(ContactOrganization[])*
+
+*   **생일**: 연락처의 생일. *(날짜)*
+
+*   **참고**: 연락처에 대 한 참고. *(DOMString)*
+
+*   **사진**: 연락처의 사진을 배열. *(ContactField[])*
+
+*   **카테고리**: 모든 사용자 정의 범주 연락처에 연결 된 배열. *(ContactField[])*
+
+*   **url**: 연락처에 연결 된 웹 페이지의 배열. *(ContactField[])*
+
+### 메서드
+
+*   **복제**: 새로운 반환 합니다 `Contact` 으로 호출 하는 개체의 전체 복사본은 개체는 `id` 속성으로 설정`null`.
+
+*   **제거**: 장치 연락처 데이터베이스에서 연락처를 제거 합니다, 그렇지 않으면와 오류 콜백을 실행 한 `ContactError` 개체.
+
+*   **저장**: 장치 연락처 데이터베이스를 새 연락처를 저장 또는 동일한 **id** 를 가진 연락처가 이미 있는 경우 기존 연락처를 업데이트 합니다.
+
+### 지원 되는 플랫폼
+
+*   아마존 화재 운영 체제
+*   안 드 로이드
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+*   윈도우 8
+
+### 예를 들어 저장
+
+    function onSuccess(contact) {
+        alert("Save Success");
+    };
+    
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+    
+    // create a new contact object
+    var contact = navigator.contacts.create();
+    contact.displayName = "Plumber";
+    contact.nickname = "Plumber";            // specify both to support all devices
+    
+    // populate some fields
+    var name = new ContactName();
+    name.givenName = "Jane";
+    name.familyName = "Doe";
+    contact.name = name;
+    
+    // save to device
+    contact.save(onSuccess,onError);
+    
+
+### 복제 예제
+
+        // clone the contact object
+        var clone = contact.clone();
+        clone.name.givenName = "John";
+        console.log("Original contact name = " + contact.name.givenName);
+        console.log("Cloned contact name = " + clone.name.givenName);
+    
+
+### 예제 제거
+
+    function onSuccess() {
+        alert("Removal Success");
+    };
+    
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+    
+    // remove the contact from the device
+    contact.remove(onSuccess,onError);
+    
+
+### 안 드 로이드 2.X 단점
+
+*   **카테고리**: 안 드 로이드 2.X 장치, 반환에서 지원 되지 않습니다`null`.
+
+### 블랙베리 10 단점
+
+*   **id**: 연락처를 저장 하면 장치에 할당 합니다.
+
+### FirefoxOS 특수
+
+*   **카테고리**: 부분적으로 지원 합니다. 필드 **pref** 및 **형식** 반환`null`
+
+*   **ims**: 지원 되지 않음
+
+*   **사진**: 지원 되지 않음
+
+### iOS 단점
+
+*   **displayName**: 반환 iOS에서 지원 되지 않는 `null` 가 아무 `ContactName` 지정 된,이 경우 복합 이름, **닉네임** 을 반환 합니다 또는 `""` , 각각.
+
+*   **생일**: 자바 스크립트로 입력 해야 합니다 `Date` 개체를 같은 방식으로 반환 됩니다.
+
+*   **사진**: 응용 프로그램의 임시 디렉터리에 저장 된 이미지 파일 URL을 반환 합니다. 응용 프로그램이 종료 될 때 임시 디렉터리의 내용은 제거 됩니다.
+
+*   **카테고리**:이 속성은 현재 지원 되지 않습니다, 반환`null`.
+
+### Windows Phone 7, 8 특수
+
+*   **displayName**: 연락처를 만들 때 표시 이름에서 표시 이름 매개 변수 다릅니다 제공 값 검색 연락처를 찾을 때.
+
+*   **url**: 연락처를 만들 때 사용자가 입력을 하나 이상의 웹 주소를 저장 하지만 하나만 사용할 수 있는 연락처를 검색할 때.
+
+*   **phoneNumbers**: *pref* 옵션이 지원 되지 않습니다. *형식* *찾기* 작업에서 지원 되지 않습니다. 단 하나 `phoneNumber` 각 *형식* 에 대 한 허용.
+
+*   **이메일**: *pref* 옵션이 지원 되지 않습니다. 가정 및 개인 동일한 이메일 항목 참조. 각 *형식* 에 대 한 항목이 하나만 허용.
+
+*   **주소**: 직장, 및 가정/개인 *유형*을 지원 합니다. 가정 및 개인 *유형* 동일한 주소 항목 참조. 각 *형식* 에 대 한 항목이 하나만 허용.
+
+*   **조직**: 하나만 허용 되 고 *pref*, *유형*및 *부서* 특성을 지원 하지 않습니다.
+
+*   **참고**: 지원 되지 않는 반환`null`.
+
+*   **ims**: 지원 되지 않는 반환`null`.
+
+*   **생일**: 지원 되지 않는 반환`null`.
+
+*   **카테고리**: 지원 되지 않는 반환`null`.
+
+## ContactAddress
+
+`ContactAddress`개체는 연락처의 단일 주소 속성을 저장 합니다. A `Contact` 개체에 하나 이상의 주소가 포함 될 수 있습니다는 `ContactAddress[]` 배열.
+
+### 속성
+
+*   **pref**: 설정 `true` 이 경우 `ContactAddress` 사용자의 기본 설정된 값이 포함 됩니다. *(부울)*
+
+*   **유형**: 예를 들어 필드, *홈* 의 어떤 종류를 나타내는 문자열. *(DOMString)*
+
+*   **포맷**: 전체 주소 표시를 위해 서식이 지정 된. *(DOMString)*
+
+*   **streetAddress**: 전체 주소. *(DOMString)*
+
+*   **지역**: 구, 군 또는 도시. *(DOMString)*
+
+*   **지역**: 상태 또는 지역. *(DOMString)*
+
+*   **postalCode**: 우편 번호 또는 우편 번호. *(DOMString)*
+
+*   **국가**: 국가 이름. *(DOMString)*
+
+### 지원 되는 플랫폼
+
+*   아마존 화재 운영 체제
+*   안 드 로이드
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+*   윈도우 8
+
+### 예를 들어
+
+    // display the address information for all contacts
+    
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            for (var j = 0; j < contacts[i].addresses.length; j++) {
+                alert("Pref: "         + contacts[i].addresses[j].pref          + "\n" +
+                    "Type: "           + contacts[i].addresses[j].type          + "\n" +
+                    "Formatted: "      + contacts[i].addresses[j].formatted     + "\n" +
+                    "Street Address: " + contacts[i].addresses[j].streetAddress + "\n" +
+                    "Locality: "       + contacts[i].addresses[j].locality      + "\n" +
+                    "Region: "         + contacts[i].addresses[j].region        + "\n" +
+                    "Postal Code: "    + contacts[i].addresses[j].postalCode    + "\n" +
+                    "Country: "        + contacts[i].addresses[j].country);
+            }
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    // find all contacts
+    var options = new ContactFindOptions();
+    options.filter = "";
+    var filter = ["displayName", "addresses"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### 안 드 로이드 2.X 단점
+
+*   **pref**: 지원 되지 않는 반환 `false` 안 드 로이드 2.X 장치에.
+
+### 블랙베리 10 단점
+
+*   **pref**: 반환 BlackBerry 장치에서 지원 되지 않습니다`false`.
+
+*   **유형**: 부분적으로 지원 합니다. *작업* 및 *홈* 형식 주소 각 단 하나 접촉 당 저장할 수 있습니다.
+
+*   **포맷**: 부분적으로 지원 합니다. 모든 검은 딸기 주소 필드의 연결을 반환합니다.
+
+*   **streetAddress**: 지원. 블랙베리 **address1** **주소 2** 의 연결 주소 필드를 반환합니다.
+
+*   **지역**: 지원. 블랙베리 **시** 주소 필드에 저장 합니다.
+
+*   **지역**: 지원. 블랙베리 **stateProvince** 주소 필드에 저장 합니다.
+
+*   **postalCode**: 지원. 블랙베리 **zipPostal** 주소 필드에 저장 합니다.
+
+*   **국가**: 지원.
+
+### FirefoxOS 특수
+
+*   **포맷**: 현재 지원 되지 않습니다
+
+### iOS 단점
+
+*   **pref**: 반환 하는 iOS 장치에서 지원 되지 않습니다`false`.
+
+*   **포맷**: 현재 지원 되지 않습니다.
+
+### 윈도우 8 단점
+
+*   **pref**: 지원 되지 않음
+
+## ContactError
+
+`ContactError`개체를 통해 사용자에 게 반환 되는 `contactError` 콜백 함수는 오류가 발생 한 경우.
+
+### 속성
+
+*   **코드**: 미리 정의 된 오류 코드 중 하나가 아래에 나열 된.
+
+### 상수
+
+*   `ContactError.UNKNOWN_ERROR` (code 0)
+*   `ContactError.INVALID_ARGUMENT_ERROR` (code 1)
+*   `ContactError.TIMEOUT_ERROR` (code 2)
+*   `ContactError.PENDING_OPERATION_ERROR` (code 3)
+*   `ContactError.IO_ERROR` (code 4)
+*   `ContactError.NOT_SUPPORTED_ERROR` (code 5)
+*   `ContactError.PERMISSION_DENIED_ERROR` (code 20)
+
+## ContactField
+
+`ContactField`개체는 재사용 가능한 구성 요소를 나타내는 필드를 일반적으로 문의. 각 `ContactField` 개체에 포함 되어 있는 `value` , `type` , 및 `pref` 속성. A `Contact` 개체에 여러 속성이 저장 `ContactField[]` 배열, 전화 번호 및 이메일 주소.
+
+대부분의 경우에는 미리 결정 된 값에 대 한는 `ContactField` 개체의 **type** 속성. 예를 들어 전화 번호 *홈*, *작품*, *모바일*, *아이폰*또는 특정 장치 플랫폼의 연락처 데이터베이스에서 지원 되는 다른 값의 **유형** 값을 지정할 수 있습니다. 그러나는 `Contact` **사진** 필드 **유형** 필드 나타냅니다 반환 된 이미지 형식: **url** **값** 특성 **값** 이미지 base64 인코딩된 문자열을 포함 하는 경우 사진 이미지 또는 *base64* URL이 포함 된 경우.
+
+### 속성
+
+*   **유형**: 예를 들어 필드, *홈* 의 어떤 종류를 나타내는 문자열입니다. *(DOMString)*
+
+*   **값**: 전화 번호 또는 이메일 주소와 같은 필드 값. *(DOMString)*
+
+*   **pref**: 설정 `true` 이 경우 `ContactField` 사용자의 기본 설정된 값이 포함 됩니다. *(부울)*
+
+### 지원 되는 플랫폼
+
+*   아마존 화재 운영 체제
+*   안 드 로이드
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+*   윈도우 8
+
+### 예를 들어
+
+        // create a new contact
+        var contact = navigator.contacts.create();
+    
+        // store contact phone numbers in ContactField[]
+        var phoneNumbers = [];
+        phoneNumbers[0] = new ContactField('work', '212-555-1234', false);
+        phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // preferred number
+        phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
+        contact.phoneNumbers = phoneNumbers;
+    
+        // save the contact
+        contact.save();
+    
+
+### 안 드 로이드 단점
+
+*   **pref**: 지원 되지 않는 반환`false`.
+
+### 블랙베리 10 단점
+
+*   **유형**: 부분적으로 지원 합니다. 전화 번호에 대 한 사용.
+
+*   **값**: 지원.
+
+*   **pref**: 지원 되지 않는 반환`false`.
+
+### iOS 단점
+
+*   **pref**: 지원 되지 않는 반환`false`.
+
+### Windows8 단점
+
+*   **pref**: 지원 되지 않는 반환`false`.
+
+## 담당자 이름
+
+에 대 한 다양 한 정보를 포함 한 `Contact` 개체의 이름.
+
+### 속성
+
+*   **포맷**: 연락처의 전체 이름. *(DOMString)*
+
+*   **familyName**: 연락처의 성. *(DOMString)*
+
+*   **givenName**: 연락처의 이름. *(DOMString)*
+
+*   **middleName**: 연락처의 중간 이름을. *(DOMString)*
+
+*   **honorificPrefix**: 연락처의 접두사 (예: *미스터* 또는 *닥터*) *(DOMString)*
+
+*   **honorificSuffix**: 연락처의 접미사 ( *esq.*예). *(DOMString)*
+
+### 지원 되는 플랫폼
+
+*   아마존 화재 운영 체제
+*   안 드 로이드 2.X
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+*   윈도우 8
+
+### 예를 들어
+
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            alert("Formatted: "  + contacts[i].name.formatted       + "\n" +
+                "Family Name: "  + contacts[i].name.familyName      + "\n" +
+                "Given Name: "   + contacts[i].name.givenName       + "\n" +
+                "Middle Name: "  + contacts[i].name.middleName      + "\n" +
+                "Suffix: "       + contacts[i].name.honorificSuffix + "\n" +
+                "Prefix: "       + contacts[i].name.honorificSuffix);
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    var options = new ContactFindOptions();
+    options.filter = "";
+    filter = ["displayName", "name"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### 안 드 로이드 단점
+
+*   **포맷**: 부분적으로 지원 되 고 읽기 전용. 연결을 반환 합니다 `honorificPrefix` , `givenName` , `middleName` , `familyName` , 그리고`honorificSuffix`.
+
+### 블랙베리 10 단점
+
+*   **포맷**: 부분적으로 지원 합니다. 블랙베리 **firstName** 및 **lastName** 필드의 연결을 반환합니다.
+
+*   **familyName**: 지원. 블랙베리 **lastName** 필드에 저장 합니다.
+
+*   **givenName**: 지원. 블랙베리 **firstName** 필드에 저장 합니다.
+
+*   **middleName**: 지원 되지 않는 반환`null`.
+
+*   **honorificPrefix**: 지원 되지 않는 반환`null`.
+
+*   **honorificSuffix**: 지원 되지 않는 반환`null`.
+
+### FirefoxOS 특수
+
+*   **포맷**: 부분적으로 지원 되 고 읽기 전용. 연결을 반환 합니다 `honorificPrefix` , `givenName` , `middleName` , `familyName` , 그리고`honorificSuffix`.
+
+### iOS 단점
+
+*   **포맷**: 부분적으로 지원 합니다. IOS 복합 이름 반환 하지만 읽기 전용입니다.
+
+### 윈도우 8 단점
+
+*   **형식**: 이것은 유일한 속성 이름과 동일 하다 `displayName` , 및`nickname`
+
+*   **familyName**: 지원 되지 않음
+
+*   **givenName**: 지원 되지 않음
+
+*   **middleName**: 지원 되지 않음
+
+*   **honorificPrefix**: 지원 되지 않음
+
+*   **honorificSuffix**: 지원 되지 않음
+
+## ContactOrganization
+
+`ContactOrganization`개체를 연락처의 조직 속성을 저장 합니다. A `Contact` 개체 저장 하나 이상의 `ContactOrganization` 개체 배열에.
+
+### 속성
+
+*   **pref**: 설정 `true` 이 경우 `ContactOrganization` 사용자의 기본 설정된 값이 포함 됩니다. *(부울)*
+
+*   **유형**: 예를 들어 필드, *홈* 의 어떤 종류를 나타내는 문자열입니다. _(DOMString)
+
+*   **이름**: 조직 이름. *(DOMString)*
+
+*   **부서**: 계약을 위해 일 하는 부서. *(DOMString)*
+
+*   **제목**: 조직에서 연락처의 제목. *(DOMString)*
+
+### 지원 되는 플랫폼
+
+*   안 드 로이드
+*   블랙베리 10
+*   Firefox 운영 체제
+*   iOS
+*   Windows Phone 7과 8
+
+### 예를 들어
+
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            for (var j = 0; j < contacts[i].organizations.length; j++) {
+                alert("Pref: "      + contacts[i].organizations[j].pref       + "\n" +
+                    "Type: "        + contacts[i].organizations[j].type       + "\n" +
+                    "Name: "        + contacts[i].organizations[j].name       + "\n" +
+                    "Department: "  + contacts[i].organizations[j].department + "\n" +
+                    "Title: "       + contacts[i].organizations[j].title);
+            }
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    var options = new ContactFindOptions();
+    options.filter = "";
+    filter = ["displayName", "organizations"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### 안 드 로이드 2.X 단점
+
+*   **pref**: 반환 안 드 로이드 2.X 장치에 의해 지원 되지 않습니다`false`.
+
+### 블랙베리 10 단점
+
+*   **pref**: 반환 블랙베리 장치에 의해 지원 되지 않습니다`false`.
+
+*   **유형**: 반환 블랙베리 장치에 의해 지원 되지 않습니다`null`.
+
+*   **이름**: 부분적으로 지원 합니다. 첫 번째 조직 이름 블랙베리 **회사** 필드에 저장 됩니다.
+
+*   **부서**: 지원 되지 않는 반환`null`.
+
+*   **제목**: 부분적으로 지원 합니다. 첫 번째 조직 제목 블랙베리 **jobTitle** 필드에 저장 됩니다.
+
+### 파이어 폭스 OS 단점
+
+*   **pref**: 지원 되지 않음
+
+*   **형식**: 지원 되지 않음
+
+*   **부서**: 지원 되지 않음
+
+*   필드 **이름** 및 **제목** **org** 및 **jobTitle** 에 저장.
+
+### iOS 단점
+
+*   **pref**: 반환 하는 iOS 장치에서 지원 되지 않습니다`false`.
+
+*   **유형**: 반환 하는 iOS 장치에서 지원 되지 않습니다`null`.
+
+*   **이름**: 부분적으로 지원 합니다. 첫 번째 조직 이름은 iOS **kABPersonOrganizationProperty** 필드에 저장 됩니다.
+
+*   **부서**: 부분적으로 지원 합니다. 첫 번째 부서 이름은 iOS **kABPersonDepartmentProperty** 필드에 저장 됩니다.
+
+*   **제목**: 부분적으로 지원 합니다. 첫 번째 타이틀 iOS **kABPersonJobTitleProperty** 필드에 저장 됩니다.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/blob/efb6b948/doc/pl/index.md
----------------------------------------------------------------------
diff --git a/doc/pl/index.md b/doc/pl/index.md
new file mode 100644
index 0000000..529de86
--- /dev/null
+++ b/doc/pl/index.md
@@ -0,0 +1,668 @@
+<!---
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+
+# org.apache.cordova.contacts
+
+Zapewnia dostęp do bazy danych kontaktów urządzenia.
+
+**Ostrzeżenie**: zbierania i wykorzystywania danych kontaktowych podnosi kwestie prywatności ważne. Polityka prywatności danej aplikacji należy Dyskutować, jak aplikacja używa danych kontaktowych i czy jest on dzielony z innymi stronami. Informacje kontaktowe uznaje wrażliwych, ponieważ ukazuje ludzi, z którymi osoba komunikuje się. W związku z tym oprócz aplikacji prywatności, zdecydowanie zaleca się zapewnienie just-in czas wypowiedzenia zanim aplikacja uzyskuje dostęp do lub używa danych kontaktowych, jeśli system operacyjny urządzenia nie robi już. Że ogłoszenie powinno zawierać te same informacje, o których wspomniano powyżej, jak również uzyskanie uprawnienia użytkownika (np. poprzez przedstawianie wyborów **OK** i **Nie dzięki**). Należy pamiętać, że niektóre platformy aplikacji może wymagać aplikacji powiadomienia just-in czas i uzyskać uprawnienia użytkownika przed uzyskaniem dostępu do danych kontaktowych. Jasne i łatwe do zrozumien
 ia użytkownika doświadczenie, wykorzystanie kontaktów danych pomaga uniknąć nieporozumień użytkownik i postrzegane nadużycia danych kontaktowych. Aby uzyskać więcej informacji zobacz przewodnik prywatności.
+
+## Instalacji
+
+    cordova plugin add org.apache.cordova.contacts
+    
+
+### Firefox OS dziwactwa
+
+Tworzenie **www/manifest.webapp** , jak opisano w [Dokumentach Manifest][1]. Dodaj odpowiednie permisions. Istnieje również potrzeba zmienić typ webapp do "uprzywilejowanych" - [Manifest dokumenty][2]. **Ostrzeżenie**: wszystkie uprzywilejowany apps egzekwowania [Treści polityki bezpieczeństwa][3] , który zabrania skrypt. Zainicjować aplikacji w inny sposób.
+
+ [1]: https://developer.mozilla.org/en-US/Apps/Developing/Manifest
+ [2]: https://developer.mozilla.org/en-US/Apps/Developing/Manifest#type
+ [3]: https://developer.mozilla.org/en-US/Apps/CSP
+
+    "type": "privileged",
+    "permissions": {
+        "contacts": {
+            "access": "readwrite",
+            "description": "Describe why there is a need for such permission"
+        }
+    }
+    
+
+### Windows 8 dziwactwa
+
+Windows 8 kontaktów są tylko do odczytu. Poprzez kontakty Cordova API są nie queryable/wyszukiwania, należy poinformować użytkownika wybrać kontakt jako wezwanie do contacts.pickContact, która zostanie otwarta aplikacja 'Ludzie', gdzie użytkownik musi wybrać kontakt. Wszelkie kontakty, zwracane są tylko do odczytu, więc aplikacja nie mogą ich modyfikować.
+
+## Navigator.Contacts
+
+### Metody
+
+*   navigator.contacts.create
+*   navigator.contacts.find
+*   navigator.contacts.pickContact
+
+### Obiekty
+
+*   Kontakt
+*   Przedstawiciel
+*   ContactField
+*   ContactAddress
+*   ContactOrganization
+*   ContactFindOptions
+*   ContactError
+*   ContactFieldType
+
+## Navigator.Contacts.Create
+
+`navigator.contacts.create`Metoda jest synchroniczna i zwraca nową `Contact` obiektu.
+
+Ta metoda nie zachowuje kontakt obiektu bazy danych kontaktów urządzenie, dla którego musisz wywołać `Contact.save` Metoda.
+
+### Obsługiwane platformy
+
+*   Android
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+
+### Przykład
+
+    var myContact = navigator.contacts.create({"displayName": "Test User"});
+    
+
+## navigator.contacts.find
+
+`navigator.contacts.find`Metoda asynchronicznie, wykonuje kwerendy bazy danych kontaktów urządzenia i tablicę z `Contact` obiektów. Wynikowe obiekty są przekazywane do `contactSuccess` funkcji wywołania zwrotnego, określony przez parametr **contactSuccess** .
+
+Parametr **contactFields** określa pola, które mają być używane jako kwalifikator Szukaj. Zerowej długości **contactFields** parametr jest nieprawidłowy i wyniki w `ContactError.INVALID_ARGUMENT_ERROR` . **ContactFields** wartość `"*"` zwraca wszystkich pól.
+
+Ciąg **contactFindOptions.filter** może służyć jako filtr wyszukiwania, gdy kwerenda bazy danych kontaktów. Jeśli dostarczone, przypadek-niewrażliwe, częściowej wartości mecz jest stosowane do każdego pola określony w parametrze **contactFields** . Jeśli ma odpowiednika dla *każdego* pola określony, zwracany jest kontakt. Użycie **contactFindOptions.desiredFields** parametr do kontroli, które kontakt właściwości muszą zostać zwrócone ponownie.
+
+### Parametry
+
+*   **contactSuccess**: sukcesu funkcji wywołania zwrotnego, wywoływane z tablicy obiektów kontaktów zwracane z bazy danych. [Wymagane]
+
+*   **contactError**: Błąd funkcji wywołania zwrotnego, wywoływana, gdy wystąpi błąd. [Opcjonalnie]
+
+*   **contactFields**: kontakt z pól do wykorzystania jako kwalifikator Szukaj. *(DOMString[])* [Wymagane]
+
+*   **contactFindOptions**: Szukaj opcji filtrowania navigator.contacts. [Opcjonalnie] Klucze obejmuje:
+
+*   **Filtr**: ciąg wyszukiwania umożliwia znalezienie navigator.contacts. *(DOMString)* (Domyślnie:`""`)
+
+*   **wiele**: określa, czy operacja Znajdź zwraca wiele navigator.contacts. *(Wartość logiczna)* (Domyślnie:`false`)
+    
+    *   **desiredFields**: kontakt z pola, aby być zwrócona. Jeśli określony, wynikającego z `Contact` Obiekt dysponuje tylko wartości tych pól. *(DOMString[])* [Opcjonalnie]
+
+### Obsługiwane platformy
+
+*   Android
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+
+### Przykład
+
+    function onSuccess(contacts) {
+        alert('Found ' + contacts.length + ' contacts.');
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    // find all contacts with 'Bob' in any name field
+    var options      = new ContactFindOptions();
+    options.filter   = "Bob";
+    options.multiple = true;
+    options.desiredFields = [navigator.contacts.fieldType.id];
+    var fields       = [navigator.contacts.fieldType.displayName, navigator.contacts.fieldType.name];
+    navigator.contacts.find(onSuccess, onError, fields, options);
+    
+
+## navigator.contacts.pickContact
+
+`navigator.contacts.pickContact`Metoda uruchamia próbnika kontakt, wybierz jeden kontaktem. Wynikowy obiekt jest przekazywany do `contactSuccess` funkcji wywołania zwrotnego, określony przez parametr **contactSuccess** .
+
+### Parametry
+
+*   **contactSuccess**: sukcesu funkcji wywołania zwrotnego, wywoływane z jednego obiektu kontakt. [Wymagane]
+
+*   **contactError**: Błąd funkcji wywołania zwrotnego, wywoływana, gdy wystąpi błąd. [Opcjonalnie]
+
+### Obsługiwane platformy
+
+*   Android
+*   iOS
+*   Windows Phone 8
+*   Windows 8
+
+### Przykład
+
+    navigator.contacts.pickContact(function(contact){
+            console.log('The following contact has been selected:' + JSON.stringify(contact));
+        },function(err){
+            console.log('Error: ' + err);
+        });
+    
+
+## Kontakt
+
+`Contact`Obiekt reprezentuje informacje kontaktowe. Kontakty mogą być tworzone, przechowywane lub usunięte z bazy danych kontaktów urządzenia. Kontakty można również pobrać (pojedynczo lub zbiorczo) bazy danych przez `navigator.contacts.find` Metoda.
+
+**Uwaga**: nie wszystkie pola kontaktowe wymienione powyżej są obsługiwane na każdej platformie urządzenia. Proszę sprawdzić każdej platformy *dziwactw* sekcji szczegółów.
+
+### Właściwości
+
+*   **Identyfikator**: unikatowy identyfikator globalny. *(DOMString)*
+
+*   **displayName**: Nazwa tego kontaktu, nadaje się do wyświetlania użytkownikom końcowym. *(DOMString)*
+
+*   **Nazwa**: obiekt zawierający wszystkie składniki nazwy osób. *(Przedstawiciel)*
+
+*   **nick**: dorywczo nazwy na adres kontakt. *(DOMString)*
+
+*   **numery telefon≤w**: tablica numerów telefonów kontaktowych. *(ContactField[])*
+
+*   **e-maile**: tablica adresów e-mail kontakt. *(ContactField[])*
+
+*   **adresy**: tablica wszystkie adresy. *(ContactAddress[])*
+
+*   **IMS**: tablica kontakt IM adresy. *(ContactField[])*
+
+*   **organizacje**: tablicy wszystkie kontakty organizacji. *(ContactOrganization[])*
+
+*   **urodziny**: urodziny kontakt. *(Data)*
+
+*   **Uwaga**: Uwaga o kontakt. *(DOMString)*
+
+*   **zdjęcia**: tablica zdjęcia kontaktu. *(ContactField[])*
+
+*   **Kategorie**: tablica wszystkie zdefiniowane przez użytkownika kategorie związane z kontaktem. *(ContactField[])*
+
+*   **adresy URL**: tablicy stron internetowych związanych z kontaktem. *(ContactField[])*
+
+### Metody
+
+*   **klon**: Zwraca nowy `Contact` obiekt, który jest kopią głęboko obiektu wywołującego, z `id` Właściwość zestaw`null`.
+
+*   **Usuń**: usuwa kontakt z bazy danych kontaktów urządzenia, w przeciwnym razie wykonuje błąd wywołania zwrotnego z `ContactError` obiektu.
+
+*   **Zapisz**: zapisuje nowy kontakt do bazy kontaktów urządzenia, lub aktualizacje już istniejący kontakt, jeśli istnieje już kontakt o tym samym **identyfikatorze** .
+
+### Obsługiwane platformy
+
+*   Amazon ogień OS
+*   Android
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+*   Windows 8
+
+### Zapisz przykład
+
+    function onSuccess(contact) {
+        alert("Save Success");
+    };
+    
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+    
+    // create a new contact object
+    var contact = navigator.contacts.create();
+    contact.displayName = "Plumber";
+    contact.nickname = "Plumber";            // specify both to support all devices
+    
+    // populate some fields
+    var name = new ContactName();
+    name.givenName = "Jane";
+    name.familyName = "Doe";
+    contact.name = name;
+    
+    // save to device
+    contact.save(onSuccess,onError);
+    
+
+### Przykład klon
+
+        // clone the contact object
+        var clone = contact.clone();
+        clone.name.givenName = "John";
+        console.log("Original contact name = " + contact.name.givenName);
+        console.log("Cloned contact name = " + clone.name.givenName);
+    
+
+### Remove przykład
+
+    function onSuccess() {
+        alert("Removal Success");
+    };
+    
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+    
+    // remove the contact from the device
+    contact.remove(onSuccess,onError);
+    
+
+### Android 2.X dziwactwa
+
+*   **Kategorie**: nie obsługiwane na urządzeniach Android 2.X, powrót`null`.
+
+### Jeżyna 10 dziwactwa
+
+*   **Identyfikator**: przypisany przez urządzenie podczas zapisywania kontaktu.
+
+### Osobliwości FirefoxOS
+
+*   **Kategorie**: częściowo obsługiwane. Pola **pref** i **Typ** wracają`null`
+
+*   **IMS**: nie obsługiwane
+
+*   **zdjęcia**: nie obsługiwane
+
+### iOS dziwactwa
+
+*   **displayName**: nie obsługiwane na iOS, powrót `null` chyba jest nie `ContactName` określony, w którym to przypadku zwraca nazwę kompozytowe, **nick** lub `""` , odpowiednio.
+
+*   **urodziny**: należy wpisać jako JavaScript `Date` obiektu, tak samo jest zwracany.
+
+*   **zdjęcia**: zwraca adres URL pliku obrazu, który jest przechowywany w katalogu tymczasowego stosowania. Zawartość katalogu tymczasowe są usuwane, kiedy kończy pracę aplikacji.
+
+*   **Kategorie**: Ta właściwość obecnie jest nie obsługiwane, powrót`null`.
+
+### Windows Phone 7 i 8 dziwactwa
+
+*   **displayName**: podczas tworzenia kontaktu, Źródło wartość podana dla parametru nazwy wyświetlania różni się od nazwy wyświetlanej, gdy znalezienie kontaktu.
+
+*   **adresy URL**: podczas tworzenia kontaktu, użytkownicy mogą wpisać i zapisać więcej niż jeden adres sieci web, ale tylko jeden jest dostępne podczas wyszukiwania kontaktów.
+
+*   **numery telefon≤w**: *pref* opcja nie jest obsługiwana. *Typ* nie jest obsługiwany w operacji *znaleźć* . Jedynym `phoneNumber` jest dozwolone dla każdego *typu*.
+
+*   **e-maile**: *pref* opcja nie jest obsługiwana. Domu i osobiste odwołuje się w tym samym wpisu email. Dla każdego *typu* dozwolone jest tylko jeden wpis.
+
+*   **adresy**: obsługuje tylko pracy i domu/osobisty *typu*. Domowych i osobistych *typu* odwołania tej samej pozycji adres. Dla każdego *typu* dozwolone jest tylko jeden wpis.
+
+*   **organizacje**: tylko jeden jest dozwolone, a nie obsługuje * *pref*, *Typ*i* atrybuty.
+
+*   **Uwaga**: nie obsługiwane, powrót`null`.
+
+*   **IMS**: nie obsługiwane, powrót`null`.
+
+*   **urodziny**: nie obsługiwane, powrót`null`.
+
+*   **Kategorie**: nie obsługiwane, powrót`null`.
+
+## ContactAddress
+
+`ContactAddress`Obiektu przechowuje właściwości pojedynczego adresu kontaktu. A `Contact` obiektu może zawierać więcej niż jeden adres w `ContactAddress[]` tablicy.
+
+### Właściwości
+
+*   **Pref**: zestaw `true` Jeśli `ContactAddress` zawiera wartości preferowanych użytkownika. *(wartość logiczna)*
+
+*   **Typ**: string wskazującą typ pola, *do domu* na przykład. *(DOMString)*
+
+*   **w formacie**: pełny adres w formacie wyświetlania. *(DOMString)*
+
+*   **adres**: pełny adres. *(DOMString)*
+
+*   **miejscowości**: miasta lub miejscowości. *(DOMString)*
+
+*   **region**: Państwo lub region. *(DOMString)*
+
+*   **Kod pocztowy**: kod pocztowy lub kod pocztowy. *(DOMString)*
+
+*   **kraj**: nazwę kraju. *(DOMString)*
+
+### Obsługiwane platformy
+
+*   Amazon ogień OS
+*   Android
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+*   Windows 8
+
+### Przykład
+
+    // display the address information for all contacts
+    
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            for (var j = 0; j < contacts[i].addresses.length; j++) {
+                alert("Pref: "         + contacts[i].addresses[j].pref          + "\n" +
+                    "Type: "           + contacts[i].addresses[j].type          + "\n" +
+                    "Formatted: "      + contacts[i].addresses[j].formatted     + "\n" +
+                    "Street Address: " + contacts[i].addresses[j].streetAddress + "\n" +
+                    "Locality: "       + contacts[i].addresses[j].locality      + "\n" +
+                    "Region: "         + contacts[i].addresses[j].region        + "\n" +
+                    "Postal Code: "    + contacts[i].addresses[j].postalCode    + "\n" +
+                    "Country: "        + contacts[i].addresses[j].country);
+            }
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    // find all contacts
+    var options = new ContactFindOptions();
+    options.filter = "";
+    var filter = ["displayName", "addresses"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### Android 2.X dziwactwa
+
+*   **Pref**: nie obsługiwane, powrót `false` na urządzeniach Android 2.X.
+
+### Jeżyna 10 dziwactwa
+
+*   **Pref**: nie obsługiwane na urządzenia BlackBerry, powrót`false`.
+
+*   **Typ**: częściowo obsługiwane. Tylko jeden z *pracy* i *Strona główna* wpisz adresy mogą być przechowywane na kontakt.
+
+*   **w formacie**: częściowo obsługiwane. Zwraca łączenie wszystkich pól adres BlackBerry.
+
+*   **adres**: obsługiwane. Zwraca łączenie BlackBerry **address1** i **Adres2** pola adresu.
+
+*   **miejscowości**: obsługiwane. Przechowywane w polu adres **miasto** BlackBerry.
+
+*   **region**: obsługiwane. Przechowywane w polu adres **stateProvince** BlackBerry.
+
+*   **Kod pocztowy**: obsługiwane. Przechowywane w polu adres **zipPostal** BlackBerry.
+
+*   **kraj**: obsługiwane.
+
+### Osobliwości FirefoxOS
+
+*   **w formacie**: aktualnie nieobsługiwane
+
+### iOS dziwactwa
+
+*   **Pref**: nie obsługiwane urządzenia iOS, powrót`false`.
+
+*   **w formacie**: obecnie nie jest obsługiwane.
+
+### Windows 8 dziwactwa
+
+*   **Pref**: nie obsługiwane
+
+## ContactError
+
+`ContactError`Zwracany jest obiekt użytkownika za pomocą `contactError` funkcji wywołania zwrotnego, gdy wystąpi błąd.
+
+### Właściwości
+
+*   **Kod**: jeden z kodów błędów wstępnie zdefiniowanych poniżej.
+
+### Stałe
+
+*   `ContactError.UNKNOWN_ERROR` (code 0)
+*   `ContactError.INVALID_ARGUMENT_ERROR` (code 1)
+*   `ContactError.TIMEOUT_ERROR` (code 2)
+*   `ContactError.PENDING_OPERATION_ERROR` (code 3)
+*   `ContactError.IO_ERROR` (code 4)
+*   `ContactError.NOT_SUPPORTED_ERROR` (code 5)
+*   `ContactError.PERMISSION_DENIED_ERROR` (code 20)
+
+## ContactField
+
+`ContactField`Obiekt jest składnikiem wielokrotnego użytku, że reprezentuje kontakt pola ogólnie. Każdy `ContactField` zawiera obiekt `value` , `type` , a `pref` Właściwość. A `Contact` obiektu przechowuje wiele właściwości w `ContactField[]` tablice, takie jak numery telefonu, adres e-mail.
+
+W większości przypadków, są nie wcześniej ustalonych wartości dla `ContactField` atrybut **typu** obiektu. Na przykład numer telefonu można określić **Typ** wartości *domu*, *pracy*, *mobile*, *iPhone*, lub jakąkolwiek inną wartość, który jest obsługiwany przez platformę danego urządzenia bazy danych kontaktów. Jednak dla `Contact` **zdjęcia** pola, pole **Typ** wskazuje format zwrócone obrazu: **url** **wartość** atrybut zawiera adres URL do zdjęć lub *base64* , gdy **wartość** zawiera ciąg base64 zakodowany obraz.
+
+### Właściwości
+
+*   **Typ**: ciąg, który wskazuje typ pola, *do domu* , np. *(DOMString)*
+
+*   **wartości**: wartość pola, na przykład adresu e-mail lub numer telefonu. *(DOMString)*
+
+*   **Pref**: zestaw `true` Jeśli `ContactField` zawiera wartości preferowanych użytkownika. *(wartość logiczna)*
+
+### Obsługiwane platformy
+
+*   Amazon ogień OS
+*   Android
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+*   Windows 8
+
+### Przykład
+
+        // create a new contact
+        var contact = navigator.contacts.create();
+    
+        // store contact phone numbers in ContactField[]
+        var phoneNumbers = [];
+        phoneNumbers[0] = new ContactField('work', '212-555-1234', false);
+        phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // preferred number
+        phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
+        contact.phoneNumbers = phoneNumbers;
+    
+        // save the contact
+        contact.save();
+    
+
+### Android dziwactwa
+
+*   **Pref**: nie obsługiwane, powrót`false`.
+
+### Jeżyna 10 dziwactwa
+
+*   **Typ**: częściowo obsługiwane. Używane numery telefonów.
+
+*   **wartość**: obsługiwane.
+
+*   **Pref**: nie obsługiwane, powrót`false`.
+
+### iOS dziwactwa
+
+*   **Pref**: nie obsługiwane, powrót`false`.
+
+### Osobliwości Windows8
+
+*   **Pref**: nie obsługiwane, powrót`false`.
+
+## Przedstawiciel
+
+Zawiera różne rodzaje informacji o `Contact` Nazwa obiektu.
+
+### Właściwości
+
+*   **w formacie**: pełną nazwę kontaktu. *(DOMString)*
+
+*   **danych**: nazwisko kontaktu. *(DOMString)*
+
+*   **imię**: imię kontaktu. *(DOMString)*
+
+*   **middleName**: nazwy bliskiego kontaktu. *(DOMString)*
+
+*   **honorificPrefix**: kontakt prefiks (przykład *Pan* lub *Dr*) *(DOMString)*
+
+*   **honorificSuffix**: kontakt sufiks (przykład *Esq.*). *(DOMString)*
+
+### Obsługiwane platformy
+
+*   Amazon ogień OS
+*   Android 2.X
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+*   Windows 8
+
+### Przykład
+
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            alert("Formatted: "  + contacts[i].name.formatted       + "\n" +
+                "Family Name: "  + contacts[i].name.familyName      + "\n" +
+                "Given Name: "   + contacts[i].name.givenName       + "\n" +
+                "Middle Name: "  + contacts[i].name.middleName      + "\n" +
+                "Suffix: "       + contacts[i].name.honorificSuffix + "\n" +
+                "Prefix: "       + contacts[i].name.honorificSuffix);
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    var options = new ContactFindOptions();
+    options.filter = "";
+    filter = ["displayName", "name"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### Android dziwactwa
+
+*   **w formacie**: częściowo obsługiwane i tylko do odczytu. Zwraca składa się z `honorificPrefix` , `givenName` , `middleName` , `familyName` , i`honorificSuffix`.
+
+### Jeżyna 10 dziwactwa
+
+*   **w formacie**: częściowo obsługiwane. Zwraca łączenie pól **imię** i **nazwisko** BlackBerry.
+
+*   **danych**: obsługiwane. Przechowywane w BlackBerry pola **nazwisko** .
+
+*   **imię**: obsługiwane. Przechowywane w polu **imię** BlackBerry.
+
+*   **middleName**: nie obsługiwane, powrót`null`.
+
+*   **honorificPrefix**: nie obsługiwane, powrót`null`.
+
+*   **honorificSuffix**: nie obsługiwane, powrót`null`.
+
+### Osobliwości FirefoxOS
+
+*   **w formacie**: częściowo obsługiwane i tylko do odczytu. Zwraca składa się z `honorificPrefix` , `givenName` , `middleName` , `familyName` , i`honorificSuffix`.
+
+### iOS dziwactwa
+
+*   **w formacie**: częściowo obsługiwane. Zwraca iOS nazwy, ale jest tylko do odczytu.
+
+### Windows 8 dziwactwa
+
+*   **w formacie**: to jest tylko nazwa właściwość i jest taka sama, jak `displayName` , i`nickname`
+
+*   **danych**: nie obsługiwane
+
+*   **imię**: nie obsługiwane
+
+*   **middleName**: nie obsługiwane
+
+*   **honorificPrefix**: nie obsługiwane
+
+*   **honorificSuffix**: nie obsługiwane
+
+## ContactOrganization
+
+`ContactOrganization`Obiektu przechowuje właściwości organizacji kontaktu. A `Contact` obiektu przechowuje jeden lub więcej `ContactOrganization` obiekty w tablicy.
+
+### Właściwości
+
+*   **Pref**: zestaw `true` Jeśli `ContactOrganization` zawiera wartości preferowanych użytkownika. *(wartość logiczna)*
+
+*   **Typ**: ciąg, który wskazuje typ pola, *do domu* , np. _(DOMString)
+
+*   **Nazwa**: nazwa organizacji. *(DOMString)*
+
+*   **w departamencie**: dziale umowy działa. *(DOMString)*
+
+*   **tytuł**: tytuł kontaktu w organizacji. *(DOMString)*
+
+### Obsługiwane platformy
+
+*   Android
+*   Jeżyna 10
+*   Firefox OS
+*   iOS
+*   Windows Phone 7 i 8
+
+### Przykład
+
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            for (var j = 0; j < contacts[i].organizations.length; j++) {
+                alert("Pref: "      + contacts[i].organizations[j].pref       + "\n" +
+                    "Type: "        + contacts[i].organizations[j].type       + "\n" +
+                    "Name: "        + contacts[i].organizations[j].name       + "\n" +
+                    "Department: "  + contacts[i].organizations[j].department + "\n" +
+                    "Title: "       + contacts[i].organizations[j].title);
+            }
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    var options = new ContactFindOptions();
+    options.filter = "";
+    filter = ["displayName", "organizations"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### Android 2.X dziwactwa
+
+*   **Pref**: nie obsługiwane przez urządzenia Android 2.X, powrót`false`.
+
+### Jeżyna 10 dziwactwa
+
+*   **Pref**: nie obsługiwane przez urządzenia BlackBerry, powrót`false`.
+
+*   **Typ**: nie obsługiwane przez urządzenia BlackBerry, powrót`null`.
+
+*   **Nazwa**: częściowo obsługiwane. Pierwsza nazwa organizacji są przechowywane w polu **firma** BlackBerry.
+
+*   **w departamencie**: nie obsługiwane, powrót`null`.
+
+*   **tytuł**: częściowo obsługiwane. Pierwszy tytuł organizacji są przechowywane w polu **jobTitle** BlackBerry.
+
+### Firefox OS dziwactwa
+
+*   **Pref**: nie obsługiwane
+
+*   **Typ**: nie obsługiwane
+
+*   **w departamencie**: nie obsługiwane
+
+*   Pola **Nazwa** i **tytuł** przechowywane w **org** i **jobTitle**.
+
+### iOS dziwactwa
+
+*   **Pref**: nie obsługiwane urządzenia iOS, powrót`false`.
+
+*   **Typ**: nie obsługiwane urządzenia iOS, powrót`null`.
+
+*   **Nazwa**: częściowo obsługiwane. Pierwsza nazwa organizacji są przechowywane w polu **kABPersonOrganizationProperty** iOS.
+
+*   **w departamencie**: częściowo obsługiwane. Pierwsza nazwa jest przechowywana w polu **kABPersonDepartmentProperty** iOS.
+
+*   **tytuł**: częściowo obsługiwane. Pierwszy tytuł jest przechowywany w polu **kABPersonJobTitleProperty** iOS.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts/blob/efb6b948/doc/zh/index.md
----------------------------------------------------------------------
diff --git a/doc/zh/index.md b/doc/zh/index.md
new file mode 100644
index 0000000..0fdef4f
--- /dev/null
+++ b/doc/zh/index.md
@@ -0,0 +1,668 @@
+<!---
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+
+# org.apache.cordova.contacts
+
+提供對設備的連絡人資料庫的訪問。
+
+**警告**: 連絡人資料的收集和使用提出了重要的隱私問題。 您的應用程式的隱私權原則應該討論如何應用程式使用的連絡人資料和它是否被共用與任何其他方。 聯繫資訊被視為敏感,因為它揭示了人與人通信的人們。 因此,除了應用程式的隱私權原則,您應強烈考慮提供-時間通知之前應用程式訪問或使用的連絡人資料,如果設備作業系統不會這樣做已經。 該通知應提供相同的資訊上文指出的並獲取該使用者的許可權 (例如,通過為**確定**並**不感謝**提出的選擇)。 請注意一些應用程式市場可能需要應用程式來提供只是在時間的通知,並獲得相應許可權的使用者在訪問連絡人資料之前。 周圍的連絡人資料可説明避免使用者混淆使用感知的和濫用的連絡人資料的清晰和易於理解的使用者體驗。 有關詳細資訊,請參閱隱私指南。
+
+## 安裝
+
+    cordova plugin add org.apache.cordova.contacts
+    
+
+### 火狐瀏覽器作業系統的怪癖
+
+在[清單檔][1]中所述創建**www/manifest.webapp** 。 添加相關許可權。 也是需要 web 應用程式的類型更改為"特權"-[清單文檔][2]。 **警告**: 所有特權應用程式強制執行禁止內聯腳本的[內容安全性原則][3]。 在另一種方式初始化應用程式。
+
+ [1]: https://developer.mozilla.org/en-US/Apps/Developing/Manifest
+ [2]: https://developer.mozilla.org/en-US/Apps/Developing/Manifest#type
+ [3]: https://developer.mozilla.org/en-US/Apps/CSP
+
+    "type": "privileged",
+    "permissions": {
+        "contacts": {
+            "access": "readwrite",
+            "description": "Describe why there is a need for such permission"
+        }
+    }
+    
+
+### Windows 8 的怪癖
+
+Windows 8 連絡人是唯讀的。 透過科爾多瓦 API 接觸不是可查詢/搜索,你應通知使用者挑選連絡人為 contacts.pickContact,將打開 '人民' 應用程式調用,使用者必須選擇一個連絡人。 返回任何連絡人均為唯讀,因此您的應用程式不能修改它們。
+
+## navigator.contacts
+
+### 方法
+
+*   navigator.contacts.create
+*   navigator.contacts.find
+*   navigator.contacts.pickContact
+
+### 物件
+
+*   連絡人
+*   連絡人姓名
+*   ContactField
+*   ContactAddress
+*   ContactOrganization
+*   ContactFindOptions
+*   ContactError
+*   ContactFieldType
+
+## navigator.contacts.create
+
+`navigator.contacts.create`方法是同步的並返回一個新的 `Contact` 物件。
+
+此方法不會保留連絡人物件在設備的連絡人資料庫中,您需要為其調用 `Contact.save` 方法。
+
+### 支援的平臺
+
+*   Android 系統
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+
+### 示例
+
+    var myContact = navigator.contacts.create({"displayName": "Test User"});
+    
+
+## navigator.contacts.find
+
+`navigator.contacts.find`方法以非同步方式,執行設備的連絡人資料庫查詢並返回一個陣列的 `Contact` 物件。 所得到的物件傳遞給 `contactSuccess` **contactSuccess**參數所指定的回呼函數。
+
+**ContactFields**參數指定的欄位用作搜索的限定詞。 零長度**contactFields**參數是不正確結果在 `ContactError.INVALID_ARGUMENT_ERROR` 。 **ContactFields**值為 `"*"` 返回所有連絡人欄位。
+
+**ContactFindOptions.filter**字串查詢連絡人資料庫時,可以用作搜索篩選器。 如果提供,不區分大小寫,部分值匹配應用於在**contactFields**參數中指定的每個欄位。 如果有*任何*指定的欄位的匹配,則返回該連絡人。 使用**contactFindOptions.desiredFields**參數來控制哪些連絡人屬性必須回返回。
+
+### 參數
+
+*   **contactSuccess**: 從資料庫返回成功回呼函數調用時使用的連絡人物件的陣列。[要求]
+
+*   **contactError**: 錯誤回呼函數,當發生錯誤時調用。[可選]
+
+*   **contactFields**: 連絡人欄位使用作為搜索的限定詞。*(DOMString[])*[要求]
+
+*   **contactFindOptions**: 搜索選項來篩選 navigator.contacts。[可選]鍵包括:
+
+*   **篩選器**: 用來查找 navigator.contacts 的搜索字串。*() DOMString*(預設值:`""`)
+
+*   **多個**: 確定是否查找操作返回多個 navigator.contacts。*(布林)*(預設值:`false`)
+    
+    *   **desiredFields**: 聯繫要回返回的欄位。如果指定了,生成的 `Contact` 物件只能使用這些欄位的值。*(DOMString[])*[可選]
+
+### 支援的平臺
+
+*   Android 系統
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+
+### 示例
+
+    function onSuccess(contacts) {
+        alert('Found ' + contacts.length + ' contacts.');
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    // find all contacts with 'Bob' in any name field
+    var options      = new ContactFindOptions();
+    options.filter   = "Bob";
+    options.multiple = true;
+    options.desiredFields = [navigator.contacts.fieldType.id];
+    var fields       = [navigator.contacts.fieldType.displayName, navigator.contacts.fieldType.name];
+    navigator.contacts.find(onSuccess, onError, fields, options);
+    
+
+## navigator.contacts.pickContact
+
+`navigator.contacts.pickContact`方法啟動連絡人選擇器來選擇一個連絡人。 所產生的物件傳遞給 `contactSuccess` **contactSuccess**參數所指定的回呼函數。
+
+### 參數
+
+*   **contactSuccess**: 成功使用單個連絡人物件調用的回呼函數。[要求]
+
+*   **contactError**: 錯誤回呼函數,當發生錯誤時調用。[可選]
+
+### 支援的平臺
+
+*   Android 系統
+*   iOS
+*   Windows Phone 8
+*   Windows 8
+
+### 示例
+
+    navigator.contacts.pickContact(function(contact){
+            console.log('The following contact has been selected:' + JSON.stringify(contact));
+        },function(err){
+            console.log('Error: ' + err);
+        });
+    
+
+## 連絡人
+
+`Contact`物件表示使用者的連絡人。 可以創建、 存儲,或從設備的連絡人資料庫中刪除的連絡人。 連絡人可以還 (單獨或批量) 從資料庫中檢索通過調用 `navigator.contacts.find` 方法。
+
+**注**: 以上列出的連絡人欄位並不是所有平臺支援的每個設備。請檢查每個平臺*的怪癖*節瞭解詳細資訊。
+
+### 屬性
+
+*   **id**: 一個全域唯一識別碼。*() DOMString*
+
+*   **顯示名稱**: 此連絡人,適合於向最終使用者顯示的名稱。*() DOMString*
+
+*   **名稱**: 包含所有元件的人的名稱的物件。*(連絡人姓名)*
+
+*   **昵稱**: 休閒的解決連絡人名稱。*() DOMString*
+
+*   **手機**: 一個陣列的所有連絡人的電話號碼。*(ContactField[])*
+
+*   **電子郵件**: 所有連絡人的電子郵件地址的陣列。*(ContactField[])*
+
+*   **位址**: 該連絡人的所有位址的陣列。*(ContactAddress[])*
+
+*   **ims**: 所有連絡人的 IM 位址的陣列。*(ContactField[])*
+
+*   **組織**: 該連絡人的所有組織的陣列。*(ContactOrganization[])*
+
+*   **生日**: 連絡人的生日。*(日期)*
+
+*   **注**: 有關連絡人的注釋。*() DOMString*
+
+*   **照片**: 陣列連絡人的照片。*(ContactField[])*
+
+*   **類別**: 陣列與連絡人關聯的所有使用者定義的類別。*(ContactField[])*
+
+*   **url**: 陣列與連絡人關聯的 web 頁。*(ContactField[])*
+
+### 方法
+
+*   **克隆**: 返回一個新的 `Contact` 物件就是調用物件的深層副本 `id` 屬性設置為`null`.
+
+*   **刪除**: 從設備的連絡人資料庫中刪除連絡人,否則執行錯誤回檔與 `ContactError` 物件。
+
+*   **保存**: 將一個新的連絡人保存到設備的連絡人資料庫中,或更新現有的連絡人 (如果已存在具有相同**id**的連絡人。
+
+### 支援的平臺
+
+*   亞馬遜火 OS
+*   Android 系統
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+*   Windows 8
+
+### 保存示例
+
+    function onSuccess(contact) {
+        alert("Save Success");
+    };
+    
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+    
+    // create a new contact object
+    var contact = navigator.contacts.create();
+    contact.displayName = "Plumber";
+    contact.nickname = "Plumber";            // specify both to support all devices
+    
+    // populate some fields
+    var name = new ContactName();
+    name.givenName = "Jane";
+    name.familyName = "Doe";
+    contact.name = name;
+    
+    // save to device
+    contact.save(onSuccess,onError);
+    
+
+### 克隆示例
+
+        // clone the contact object
+        var clone = contact.clone();
+        clone.name.givenName = "John";
+        console.log("Original contact name = " + contact.name.givenName);
+        console.log("Cloned contact name = " + clone.name.givenName);
+    
+
+### 刪除示例
+
+    function onSuccess() {
+        alert("Removal Success");
+    };
+    
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+    
+    // remove the contact from the device
+    contact.remove(onSuccess,onError);
+    
+
+### Android 2.X 的怪癖
+
+*   **類別**: 不支援 Android 2.X 的設備上,返回`null`.
+
+### 黑莓 10 怪癖
+
+*   **id**: 由該設備分配時保存該連絡人。
+
+### FirefoxOS 的怪癖
+
+*   **類別**: 部分支援。返回欄位**治安**和**類型**`null`
+
+*   **ims**: 不支援
+
+*   **照片**: 不支援
+
+### iOS 的怪癖
+
+*   **顯示名稱**: 上返回的 iOS 不支援 `null` 除非有沒有 `ContactName` 指定,在這種情況下它將返回複合名稱,**綽號**或 `""` ,分別。
+
+*   **生日**: 必須輸入 JavaScript 作為 `Date` 物件,它將返回相同的方式。
+
+*   **照片**: 返回到圖像,存儲在應用程式的臨時目錄中的檔的 URL。當應用程式退出時刪除臨時目錄的內容。
+
+*   **類別**: 這目前不支援屬性,返回`null`.
+
+### Windows Phone 7 和 8 怪癖
+
+*   **顯示名稱**: 當創建一個連絡人,提供的顯示名稱參數不同于顯示名稱的值檢索查找連絡人時。
+
+*   **url**: 當創建一個連絡人,使用者可以輸入和保存多個 web 位址,但只有一個是可用的搜索連絡人時。
+
+*   **手機**: 不支援*參照*選項。 在*查找*操作中不是支援的*類型*。 只有一個 `phoneNumber` 允許為每個*類型*.
+
+*   **電子郵件**:*參照*選項不受支援。家庭和個人使用引用同一電子郵件項。只有一項被允許為每個*類型*.
+
+*   **位址**: 僅支援工作和家庭/個人*類型*。家庭和個人*類型*引用相同的位址條目。只有一項被允許為每個*類型*.
+
+*   **組織**: 唯一一個允許的並且不支援的*治安*、*類型*和*新聞部*的屬性。
+
+*   **注意**: 不支援返回`null`.
+
+*   **ims**: 不受支援,返回`null`.
+
+*   **生日**: 不受支援,返回`null`.
+
+*   **類別**: 不受支援,返回`null`.
+
+## ContactAddress
+
+`ContactAddress`物件存儲的單一位址的連絡人的屬性。 A `Contact` 物件可能包括多個位址在 `ContactAddress[]` 陣列。
+
+### 屬性
+
+*   **上一頁**: 設置為 `true` 如果此 `ContactAddress` 包含使用者的首選的值。*(布林)*
+
+*   **類型**: 一個字串,例如指示哪種類型的欄位這是*回家*。*() DOMString*
+
+*   **格式**: 顯示格式的完整位址。*() DOMString*
+
+*   **streetAddress**: 完整的街道位址。*() DOMString*
+
+*   **地點**: 城市或地點。*() DOMString*
+
+*   **區域**: 國家或地區。*() DOMString*
+
+*   **郵遞區號**: 郵遞區號或郵政代碼。*() DOMString*
+
+*   **國家**: 國家名稱。*() DOMString*
+
+### 支援的平臺
+
+*   亞馬遜火 OS
+*   Android 系統
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+*   Windows 8
+
+### 示例
+
+    // display the address information for all contacts
+    
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            for (var j = 0; j < contacts[i].addresses.length; j++) {
+                alert("Pref: "         + contacts[i].addresses[j].pref          + "\n" +
+                    "Type: "           + contacts[i].addresses[j].type          + "\n" +
+                    "Formatted: "      + contacts[i].addresses[j].formatted     + "\n" +
+                    "Street Address: " + contacts[i].addresses[j].streetAddress + "\n" +
+                    "Locality: "       + contacts[i].addresses[j].locality      + "\n" +
+                    "Region: "         + contacts[i].addresses[j].region        + "\n" +
+                    "Postal Code: "    + contacts[i].addresses[j].postalCode    + "\n" +
+                    "Country: "        + contacts[i].addresses[j].country);
+            }
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    // find all contacts
+    var options = new ContactFindOptions();
+    options.filter = "";
+    var filter = ["displayName", "addresses"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### Android 2.X 的怪癖
+
+*   **上一頁**: 不受支援,返回 `false` Android 2.X 的設備上。
+
+### 黑莓 10 怪癖
+
+*   **上一頁**: 返回的黑莓設備上不支援`false`.
+
+*   **類型**: 部分支援。*工作*和*家庭*類型位址的每個唯一一個可以存儲每個連絡人。
+
+*   **格式化**: 部分支援。返回的串聯的所有黑莓手機位址欄位。
+
+*   **streetAddress**: 支援。返回的串聯的黑莓**位址 1**和**位址 2**的位址欄位。
+
+*   **現場**: 支援。黑莓手機**城**位址欄位中存儲。
+
+*   **區域**: 支援。黑莓手機**stateProvince**位址欄位中存儲。
+
+*   **郵遞區號**: 支援。黑莓手機**zipPostal**位址欄位中存儲。
+
+*   **國家**: 支援。
+
+### FirefoxOS 的怪癖
+
+*   **格式化**: 目前不支援
+
+### iOS 的怪癖
+
+*   **上一頁**: 返回的 iOS 設備上不支援`false`.
+
+*   **格式化**: 目前不支援。
+
+### Windows 8 的怪癖
+
+*   **上一頁**: 不支援
+
+## ContactError
+
+`ContactError`物件返回到使用者通過 `contactError` 回呼函數時出現錯誤。
+
+### 屬性
+
+*   **代碼**: 下面列出的預定義的錯誤代碼之一。
+
+### 常量
+
+*   `ContactError.UNKNOWN_ERROR` (code 0)
+*   `ContactError.INVALID_ARGUMENT_ERROR` (code 1)
+*   `ContactError.TIMEOUT_ERROR` (code 2)
+*   `ContactError.PENDING_OPERATION_ERROR` (code 3)
+*   `ContactError.IO_ERROR` (code 4)
+*   `ContactError.NOT_SUPPORTED_ERROR` (code 5)
+*   `ContactError.PERMISSION_DENIED_ERROR` (code 20)
+
+## ContactField
+
+`ContactField`物件是可重用的元件表示泛指連絡人欄位。 每個 `ContactField` 物件包含 `value` , `type` ,和 `pref` 屬性。 A `Contact` 物件存儲中的幾個屬性 `ContactField[]` 陣列,如電話號碼和電子郵件地址。
+
+在大多數情況下,沒有任何預先確定的值為 `ContactField` 物件的**type**屬性。 例如,電話號碼可以指定**類型**的*家庭*、*工作*、*手機*、 *iPhone*或由一個特定的設備平臺聯繫資料庫支援的任何其他值的值。 然而,對於 `Contact` **的照片**欄位,**類型**欄位指示返回圖像的格式: **url**的**值**屬性包含的照片圖像或*base64*的 URL 時的**值**包含一個 base64 編碼的圖像字串時。
+
+### 屬性
+
+*   **類型**: 一個字串,例如指示哪種類型的欄位這是*回家*。*() DOMString*
+
+*   **值**: 欄位的值,如電話號碼或電子郵件地址。*() DOMString*
+
+*   **上一頁**: 設置為 `true` 如果此 `ContactField` 包含使用者的首選的值。*(布林)*
+
+### 支援的平臺
+
+*   亞馬遜火 OS
+*   Android 系統
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+*   Windows 8
+
+### 示例
+
+        // create a new contact
+        var contact = navigator.contacts.create();
+    
+        // store contact phone numbers in ContactField[]
+        var phoneNumbers = [];
+        phoneNumbers[0] = new ContactField('work', '212-555-1234', false);
+        phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // preferred number
+        phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
+        contact.phoneNumbers = phoneNumbers;
+    
+        // save the contact
+        contact.save();
+    
+
+### Android 的怪癖
+
+*   **上一頁**: 不受支援,返回`false`.
+
+### 黑莓 10 怪癖
+
+*   **類型**: 部分支援。使用的電話號碼。
+
+*   **值**: 支援。
+
+*   **上一頁**: 不受支援,返回`false`.
+
+### iOS 的怪癖
+
+*   **上一頁**: 不受支援,返回`false`.
+
+### Windows8 的怪癖
+
+*   **上一頁**: 不受支援,返回`false`.
+
+## 連絡人姓名
+
+包含有關的不同種類的資訊 `Contact` 物件的名稱。
+
+### 屬性
+
+*   **格式化**: 該連絡人的完整名稱。*() DOMString*
+
+*   **家族**: 連絡人的姓氏。*() DOMString*
+
+*   **givenName**: 連絡人的名字。*() DOMString*
+
+*   **之間**: 連絡人的中間名。*() DOMString*
+
+*   **honorificPrefix**: 連絡人的首碼 (例如*先生*或*博士*) *(DOMString)*
+
+*   **honorificSuffix**: 連絡人的尾碼 (如*律師*)。*() DOMString*
+
+### 支援的平臺
+
+*   亞馬遜火 OS
+*   Android 2.X
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+*   Windows 8
+
+### 示例
+
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            alert("Formatted: "  + contacts[i].name.formatted       + "\n" +
+                "Family Name: "  + contacts[i].name.familyName      + "\n" +
+                "Given Name: "   + contacts[i].name.givenName       + "\n" +
+                "Middle Name: "  + contacts[i].name.middleName      + "\n" +
+                "Suffix: "       + contacts[i].name.honorificSuffix + "\n" +
+                "Prefix: "       + contacts[i].name.honorificSuffix);
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    var options = new ContactFindOptions();
+    options.filter = "";
+    filter = ["displayName", "name"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### Android 的怪癖
+
+*   **格式化**: 部分支援,和唯讀。 返回的串聯的 `honorificPrefix` , `givenName` , `middleName` , `familyName` ,和`honorificSuffix`.
+
+### 黑莓 10 怪癖
+
+*   **格式化**: 部分支援。返回的串聯的黑莓手機**名字**和**姓氏**欄位。
+
+*   **家族**: 支援。黑莓**姓氏**欄位中存儲。
+
+*   **givenName**: 支援。黑莓**名字**欄位中存儲。
+
+*   **之間**: 不受支援,返回`null`.
+
+*   **honorificPrefix**: 不受支援,返回`null`.
+
+*   **honorificSuffix**: 不受支援,返回`null`.
+
+### FirefoxOS 的怪癖
+
+*   **格式化**: 部分支援,和唯讀。 返回的串聯的 `honorificPrefix` , `givenName` , `middleName` , `familyName` ,和`honorificSuffix`.
+
+### iOS 的怪癖
+
+*   **格式化**: 部分支援。返回 iOS 複合名稱,但為唯讀。
+
+### Windows 8 的怪癖
+
+*   **格式**: 這是唯一名稱屬性,並且是相同的 `displayName` ,和`nickname`
+
+*   **家族**: 不支援
+
+*   **givenName**: 不支援
+
+*   **之間**: 不支援
+
+*   **honorificPrefix**: 不支援
+
+*   **honorificSuffix**: 不支援
+
+## ContactOrganization
+
+`ContactOrganization`物件存儲的連絡人的組織屬性。A `Contact` 物件存儲一個或多個 `ContactOrganization` 陣列中的物件。
+
+### 屬性
+
+*   **上一頁**: 設置為 `true` 如果此 `ContactOrganization` 包含使用者的首選的值。*(布林)*
+
+*   **類型**: 一個字串,例如指示哪種類型的欄位這是*回家*。_(DOMString)
+
+*   **名稱**: 組織的名稱。*() DOMString*
+
+*   **部門**: 新聞部的工程合約。*() DOMString*
+
+*   **標題**: 在組織連絡人的標題。*() DOMString*
+
+### 支援的平臺
+
+*   Android 系統
+*   黑莓 10
+*   火狐瀏覽器作業系統
+*   iOS
+*   Windows Phone 7 和 8
+
+### 示例
+
+    function onSuccess(contacts) {
+        for (var i = 0; i < contacts.length; i++) {
+            for (var j = 0; j < contacts[i].organizations.length; j++) {
+                alert("Pref: "      + contacts[i].organizations[j].pref       + "\n" +
+                    "Type: "        + contacts[i].organizations[j].type       + "\n" +
+                    "Name: "        + contacts[i].organizations[j].name       + "\n" +
+                    "Department: "  + contacts[i].organizations[j].department + "\n" +
+                    "Title: "       + contacts[i].organizations[j].title);
+            }
+        }
+    };
+    
+    function onError(contactError) {
+        alert('onError!');
+    };
+    
+    var options = new ContactFindOptions();
+    options.filter = "";
+    filter = ["displayName", "organizations"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+    
+
+### Android 2.X 的怪癖
+
+*   **上一頁**: 不支援的 Android 2.X 的設備,返回`false`.
+
+### 黑莓 10 怪癖
+
+*   **上一頁**: 不支援的黑莓設備,返回`false`.
+
+*   **類型**: 不支援的黑莓設備,返回`null`.
+
+*   **名稱**: 部分支援。第一次組織名稱存儲在黑莓**公司**欄位中。
+
+*   **部**: 不受支援,返回`null`.
+
+*   **標題**: 部分支援。第一次組織標題是黑莓**jobTitle**欄位中存儲的。
+
+### 火狐瀏覽器作業系統的怪癖
+
+*   **上一頁**: 不支援
+
+*   **類型**: 不支援
+
+*   **新聞部**: 不支援
+
+*   欄位**名稱**和**標題**存儲在**組織結構圖**和**jobTitle**.
+
+### iOS 的怪癖
+
+*   **上一頁**: 返回的 iOS 設備上不支援`false`.
+
+*   **類型**: 返回的 iOS 設備上不支援`null`.
+
+*   **名稱**: 部分支援。第一次組織名稱存儲在 iOS **kABPersonOrganizationProperty**欄位中。
+
+*   **新聞部**: 部分支援。第一部名稱存儲在 iOS **kABPersonDepartmentProperty**欄位中。
+
+*   **標題**: 部分支援。第一個標題是 iOS **kABPersonJobTitleProperty**欄位中存儲的。
\ No newline at end of file