1. 程式人生 > >Android呼叫系統自帶的聯絡人介面

Android呼叫系統自帶的聯絡人介面

Intent intent = new Intent(); intent.setAction(Intent.ACTION_PICK); intent.setData(Contacts.People.CONTENT_URI); startActivityForResult(intent,     PICK_CONTACT       ); 宣告意圖方式二 Intent intent  = new Intent(Intent.ACTION_PICK); intent.setType("Contacts.People.CONTENT_TYPE");//vnd.android.cursor.dir/person startActivityForResult(intent,     PICK_CONTACT
      ); 實現onActivityResult
  1. protectedvoid onActivityResult (int requestCode, int resultCode, Intent data) {  
  2.         super.onActivityResult(requestCode, resultCode, data);  
  3.         switch (requestCode) {  
  4.             case   PICK_CONTACT   :  
  5.                 if (data == null) {  
  6.                     return
    ;  
  7.                 }  
  8.                 Uri uri = data.getData();  
  9.                 Cursor cursor = getContentResolver().query(uri, nullnullnullnull);  
  10.                 cursor.moveToFirst();  
  11.                 String number = cursor.getString(cursor.getColumnIndexOrThrow(Phones.NUMBER));  
  12.                 Log.d(TAG, "number"
     + number);  
  13.                 mContactText.setText(number);  
  14.                 mContactText.setSelection(number.length());  
  15.                 break;  
  16.             default:  
  17.                 break;  
  18.         }  
  19.     }   


(二) 2.0之後取聯絡人列表的方式 宣告意圖方式一
Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); startActivityForResult(intent, PICK_CONTACT); 宣告意圖方式二 Intent intent = new Intent(Intent.ACTION_PICK);          intent.setType(ContactsContract.Contacts.CONTENT_TYPE);//vnd.android.cursor.dir/contact startActivityForResult(intent, PICK_CONTACT);

實現onActivityResult

  1. privatestaticfinalint PICK_CONTACT = 0;  
  2.  @Override
  3.     publicvoid onActivityResult(int reqCode, int resultCode, Intent data) {  
  4.         super.onActivityResult(reqCode, resultCode, data);  
  5.         switch (reqCode) {  
  6.             case (PICK_CONTACT):  
  7.                 if (resultCode == Activity.RESULT_OK) {  
  8.                     Uri contactData = data.getData();  
  9.                     Cursor c = managedQuery(contactData, nullnullnullnull);  
  10.                     if (c.moveToFirst()) {  
  11.                         String name = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));  
  12.                         String hasPhone = c.getString(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));  
  13.                         String contactId = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID));  
  14.                         String phoneNumber = null;  
  15.                         if (hasPhone.equalsIgnoreCase("1")) {  
  16.                             hasPhone = "true";  
  17.                         }  
  18.                         else {  
  19.                             hasPhone = "false";  
  20.                         }  
  21.                         if (Boolean.parseBoolean(hasPhone)) {  
  22.                             Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,  
  23.                                                                        null,  
  24.                                                                        ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = "
  25.                                                                                + contactId,  
  26.                                                                        null,  
  27.                                                                        null);  
  28.                             while (phones.moveToNext()) {  
  29.                                 phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));  
  30.                             }  
  31.                             phones.close();  
  32.                         }  
  33.                     }  
  34.                 }  
  35.                 break;  
  36.         }  
  37.     }  

相關推薦

Android呼叫系統聯絡人介面

Intent intent = new Intent(); intent.setAction(Intent.ACTION_PICK); intent.setData(Contacts.People.CONTENT_URI); startActivityForResult(intent,     PICK_

Android呼叫系統的檔案管理器,開啟指定路徑

一、開啟系統自帶的檔案管理器 if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { showToast(R.string.msg_

Android呼叫系統的拍照功能出現Failure delivering result ResultInfo的問題

Intent getImageByCamera = new Intent(); getImageByCamera.setAction("android.media.action.IMAGE_CAPTURE"); xieWbActivity.startActivityForResult(getImageByCa

android 呼叫系統錄音實現,語音錄製與播放

相關許可權:<uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission> <uses-permission android:name="and

Android開發-呼叫系統軟體傳送郵件或分享文字-常用操作

一、實現效果     呼叫系統自帶的郵件軟體傳送郵件,同時設定收件人郵箱、郵件標題、和文字內容。 二、傳送郵件 Intent data=new Intent(Int

18、android呼叫系統檔案管理器並返回選中檔案的路徑

思路: 通過Android API呼叫系統自帶的檔案瀏覽器選取檔案獲得URI,然後將URI轉換成file,從而得到file。 import android.annotation.SuppressLint;import android.app.Activity;impo

android開發中呼叫系統的檔案選擇器遇到的一些問題

1.呼叫系統的檔案瀏覽器然後進入檔案管理器選擇文字檔案後,直接回到檔案瀏覽器頁面造成文字檔案無法選擇 開始時候使用的方法: Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("*/*"

android webview 執行時不呼叫系統瀏覽器

WebView mobView = new WebView(this); mobView.loadUrl("http://www.csdn.net"); WebSettings wSet = mobView.getSettings();     wSet.setJavaSc

安卓呼叫系統分享功能分享文字,分享大圖片,仿好奇心日報分享長圖片(不用申請微信微博官方sdk就能直接分享)

當前安卓分享一共三種方式 1,呼叫安卓系統自帶分享功能(可以分享大圖) 2,呼叫微信,微博支付寶等自己的官方分享sdk 3,用友盟,shareSdk等整合好的sdk 由於公司業務要求,需要分享一些長圖,大圖到微信,微博等。由於微信微博自己的官方sdk對圖片有限制, 比如微博

iOS開發:呼叫系統相機以及獲取相簿照片的功能實現

在iOS開發過程中,經常用到的技術之一就是APP上傳圖片了,這個知識點雖然不難,但是上傳圖片的需求卻是各不相同,比如有些時候需要你一次性在相簿中同時多選指定數量的照片,而且選擇的照片數量不確定,有時候又需要呼叫系統相機拍照圖片。針對這種不同需求的上傳照片,只要掌

Android 使用系統的DownloadManager下載apk

首先扯點別的:清明節回了一趟黃島,去了學校看了看,也是物是人非了呀。酒也沒少喝,前天做了一夜的車早上9點多到上海,然後直接殺奔公司上班,也是沒誰了。 今天記錄一下DownloadManager的使用。參考連結會在文章末尾給出。先來個效果圖。 以下載一個萬

ios開發呼叫系統的分享

1.一般情況下提到分享,我們會想到去整合某些第三方的框架,例如很多第三方分享的集合例如友盟的,整合效果如下這裡只涉及到了常用的新浪、微信、及qq; 分享功能:三個平臺都比較寬鬆,只有有appid,都可以進行分享!登入功能:微信就比較苛刻了,需要進行開發者認證,其支付功能也需要

Android:去掉系統的Activity跳轉動畫,跳轉無動畫,返回無動畫

首先,我需要在Activity跳轉沒有動畫,返回的時候也沒有動畫,排除fragment。在網上參考了其他的部落格,都只是實現了跳轉無動畫,並沒有實現返回無動畫。 <item name="and

android 設定系統字型

1,佈局檔案中設定//設定字型android:typeface="normal" //sans  serif  monospace設定和樣式android:textStyle="normal"  //bold  粗體  italic斜體android:fontFamily="

Android開啟系統檔案管理器,選擇指定型別的檔案

//呼叫系統檔案管理器開啟指定路徑目錄 Intent intent = new Intent(Intent.ACTION_GET_CONTENT); //intent.setDataAndType(Uri.fromFile(di

Android改變系統ProgressDialog的文字大小

package com.example.ttt; import android.app.Activity; import android.app.ProgressDialog; import android.os.Bundle; import android.view.W

Android新增資料到系統聯絡人介面

package com.ylt.contactsDemo; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android

如何在自己的App中呼叫Android系統的安裝/解除安裝程式

AppUtils裡面寫了如何安裝和解除安裝apk(這段程式碼出自這裡:點選開啟連結~),這裡的安裝和解除安裝呼叫的是Android本身的一個安裝解除安裝,所以可能頁面不會太優雅,並不符合商業App的期望,如果要做到更優雅的實現,就要用到靜默安裝/解除安裝,這個可以參照網上教

呼叫Android系統相機拍照,從相簿中獲取圖片(相容7.0系統

一,前言: 在日常的手機應用開發過程中,經常會遇到上傳圖片的需求,像上傳頭像之類的,這就需要呼叫系統的相機,相簿獲取照片。但是在Android 系統7.0之後認為這種操作是不安全的,這篇文章主要就是記錄7.0獲取照片遇到的問題。 二,FileProvider介紹 都

調用aNDROID系統功能

ont hao123 provide music content vid uri android系統 系統 CONTENTpROVIDER%E5%9F%BA%E7%A1%80%E4%B9%8BURI http://music.hao123.com/songlist/495