2016-09-14 6 views
0

私はHTML5、CSS、JavaScript、Jqueryを使用してアプリを構築するSMSメッセージング用のHTML5ベースのAndroidアプリを構築していますTelerikまたはPhoneGapを使用してAPKに変換します。HTML5で構築されたAndroidネイティブアプリのテキストボックスに選択した連絡先を読み込む方法

私は、ユーザーが電話帳の連絡先フォームを選択し、選択した連絡先をテキストボックスに読み込ませる機能をアプリケーションに用意する必要があります。

私は仕事

<input type="text" id="number"> 
    <button id="pickContact">Phonebook</button> 

    <script> 
var pickContact = document.getElementById('pickCntact') 
pickContact.setOnClickListener(new View.OnClickListener() {    
     @Override 
     public void onClick(View g) { 
      Intent q = new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI); 
      startActivityForResult(q, 1001); 

     } 
    }); 


//and to handle the result (which is referenced by 1001) use this: 

public void onActivityResult(int reqCode, int resultCode, Intent data) { 
    super.onActivityResult(reqCode, resultCode, data); 

    if (resultCode == Activity.RESULT_OK) { 
     // getting the URI from result for further working 
     Uri contactData = data.getData(); 
     Cursor c = managedQuery(contactData, null, null, null, null); 

     if (c.moveToFirst()) { 


      String id =c.getString(c.getColumnIndexOrThrow(ContactsContract.Contacts._ID)); 

      String hasPhone =c.getString(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER)); 



      if (hasPhone.equalsIgnoreCase("1")) { 
      Cursor phones = getContentResolver().query( 
          ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null, 
          ContactsContract.CommonDataKinds.Phone.CONTACT_ID +" = "+ id, 
          null, null); 
       phones.moveToFirst(); 
        //this string will hold the contact number 
        String cNumber = phones.getString(phones.getColumnIndex("data1")); 
        document.getElementById('number').value = cNumber; 
       } 

     }} 
    } 
    </script> 

を行うためにどこかに私のHTML内に以下のコードを持って、私はまた、このように、私のマニフェストファイルに必要な権限を追加しました。

<uses-permission android:name="android.permission.READ_CONTACTS" /> 

「phonebok」ボタンをクリックしても何も起こりません。

私は誰でも助けてくれますか?私はこれで新しいです。

おかげ

答えて

0

は、私は最終的に解決策を発見したと同様のソリューションを必要としているから、念の誰かにそれを共有しています。

Aは連絡先セレクタを呼び出し、Telerikプロジェクトに自動で含まれるcodavaプラグインを使用して、選択した連絡先のデフォルトの電話番号をテキストボックスに即座に読み込むことができました。

まず、私は私のHTML内

<script src="cordova.js"></script> 

をcodavaを参照するには、私は負荷接触ボタンが押されたときcodavaのpickContactプラグインを呼び出すために、このスクリプトを持っています。

$('#myActionButton').click(function() { 
     navigator.contacts.pickContact(function(contact) { 
      var numberC = contact.phoneNumbers[0].value; 
      $('#myTextBox').val(numberC); 
     }, function(err) { 
      alert(err); 
     }); 
    }); 

もっとCodavaプラグインに関する情報が、これは他の誰か

に有用であろう http://phonegap-plugins.com/

希望で発見することができます

関連する問題