4

私はiPhone開発とphonegapも初めてです。今、phonegapを使用してiPhoneで連絡先を作成したいと考えています。コーディングで iPhone に連絡先を作成するためのリンクを取得しました。ただし、JavaScript を使用した HTML コーディングが 1 つあります。しかし、コーディングを実行すると、シミュレーターとデバイスは HTML タグのコンテンツのみを表示します。以下のリンクのみをたどりました:

 "http://docs.phonegap.com/en/2.0.0/cordova_contacts_contacts.md.html#Contacts"

コーディングとスクリーンショートを添付しました:

    <!DOCTYPE html>
    <html>
      <head>
        <title>Contact Example</title>

        <script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
        <script type="text/javascript" charset="utf-8">

        // Wait for Cordova to load
        //
        document.addEventListener("deviceready", onDeviceReady, false);

        // Cordova is ready
        //
        function onDeviceReady() {
    var myContact = navigator.contacts.create({"displayName": "Test User"});
    myContact.note = "This contact has a note.";
    navigator.contacts.save(myContact);  //HERE
    console.log("The contact, " + myContact.displayName + ", note: " + myContact.note);
}



        </script>
      </head>
      <body>
        <h1>Example</h1>
        <p>Create Contact</p>
      </body>
    </html>

スクリーンショット: ここに画像の説明を入力

問題を解決するのを手伝ってください。上記のリンクからのすべての指示に従いました。しかし、私は解決策を得ませんでした。前もって感謝します。

4

2 に答える 2

1
var myContact = navigator.contacts.create({"displayName": "Test User"});

完全な例

<!DOCTYPE html>
<html>
  <head>
    <title>Contact Example</title>

    <script type="text/javascript" charset="utf-8" src="phonegap-1.0.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Wait for PhoneGap to load
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // PhoneGap is ready
    //
    function onDeviceReady() {

    try {

        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(function(){
            alert("Save Success");
        },function(){
            alert("Error...");
        });

    } catch(_err) {
        alert(_err)
    }

}    


    </script>
  </head>
  <body>
    <h1>Example</h1>
    <p>Create Contact</p>
  </body>
</html>

または、連絡先 API のその他のオプションを見つけることができます。

ドキュメントを読んでいないと思います。回答も編集しましたので、もう一度確認してください。

説明 : contacts.create は、新しい Contact オブジェクトを返す同期関数です。

このメソッドは、Contact オブジェクトをデバイスの連絡先データベースに保持しません。Contact オブジェクトをデバイスに保持するには、Contact.save メソッドを呼び出します。

http://docs.phonegap.com/en/1.0.0/phonegap_contacts_contacts.md.html#contacts.create

于 2012-09-10T11:01:23.233 に答える
1

連絡先を保存する必要があります。

ドキュメントには次のように記載されています。

contacts.create は、新しい Contact オブジェクトを返す同期関数です。

このメソッドは、Contact オブジェクトをデバイスの連絡先データベースに保持しません。Contact オブジェクトをデバイスに保持するには、Contact.save メソッドを呼び出します。

function onDeviceReady() {
    var myContact = navigator.contacts.create({"displayName": "Test User"});
    myContact.note = "This contact has a note.";
    navigator.contacts.save(myContact);  //HERE
    console.log("The contact, " + myContact.displayName + ", note: " + myContact.note);
}
于 2012-09-10T10:43:38.743 に答える