`
斌强-朱
  • 浏览: 50709 次
社区版块
存档分类
最新评论

Android PhoneNumber

 
阅读更多
<uses-permission android:name="android.permission.READ_CONTACTS"/>
package org.zbq.phone;

import android.app.Activity;
import android.content.ContentResolver;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.provider.ContactsContract.PhoneLookup;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ScrollView;
import android.widget.TextView;

public class Menu2Activity extends Activity {
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
    	TextView tv = new TextView(this);
    	ScrollView sv = new ScrollView(this);
    	StringBuffer str =new StringBuffer();
        super.onCreate(savedInstanceState);
        
        ContentResolver cr = getContentResolver();
        Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
        
        int i=0;
        
        while(cursor.moveToNext()){
        	int nameFieldColumnIndex = cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME);
        	String contact = cursor.getString(nameFieldColumnIndex);
//        	String number = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
        	StringBuffer pho =new StringBuffer();
        	String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
        	Cursor phone = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, 
        			null, 
        			ContactsContract.CommonDataKinds.Phone.CONTACT_ID+"="+contactId, 
        			null, 
        			null);
        	
        	while(phone.moveToNext()){
        		String phoneNumber = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
        		pho.append(phoneNumber+" ,");
        	}
        	str.append((++i)+":"+contact+pho.toString()+"\n");
//        	str.append(contact);
        }
        cursor.close();
        sv.addView(tv);
        tv.setText(str.toString());
        setContentView(sv);
    }
    
    public boolean onCreateOptionsMenu(Menu menu) {
    	menu.add(0, 0, 0, R.string.app_name);
    	menu.add(0, 1, 1, R.string.app_name);
    	menu.add(1, 2, 2, R.string.app_name);
    	menu.add(1, 3, 3, R.string.app_name);
    	return super.onCreateOptionsMenu(menu);
    }
    
    public boolean onOptionsItemSelected(MenuItem item) {
    	if(item.getItemId()==3){
    		finish();
    	}
    	return super.onOptionsItemSelected(item);
    }
    
}









分享到:
评论

相关推荐

    Android代码-PhoneNumber

    PhoneNumber 一个获取号码归属地和其他信息(诈骗、骚扰等)的开源库。支持本地离线(含归属地、骚扰、常用号码)和网络(百度、聚合数据或自定义 API)查询。English 下载 通过 gradle 下载 dependencies { ...

    Android代码-My phone number

    A small tool that you can edit your phone number. it only works you compile it with your private rom key-sign.

    android 仿iphone number picker

    在Android平台上,"Number Picker"控件是iOS设备特有的,其功能类似于iOS中的数字选择器,允许用户通过上下滚动来选择一个数值。由于Android原生API并没有提供这样的组件,开发者通常需要自定义实现来达到类似的效果...

    android tel phone number log

    android移动开发VoLTE IMCB: ENTER imcb_imc_rat_change_ind_handler()@1#5158

    android-phone-number-with-flags, 具有国家标志的交互式android电话号码输入框.zip

    android-phone-number-with-flags, 具有国家标志的交互式android电话号码输入框 android-phone-number-with-flags具有国家标志的交互式android电话号码输入框从网络自动检测国家/地区带有标记为 Spinner的国家列表...

    django-phonenumber-field:使用python-phonenumbers的标准化电话号码的Django模型和表单字段

    django-phonenumber-field 一个与交互的Django库,用于验证,打印和转换电话号码。 python-phonenumbers是Google的库的端口,该库可为Android的电话号码处理提供支持。 包括: PhoneNumber ,围绕python-phone...

    Android通讯录姓名手机号获取,打电话发短信功能。

    String phoneNumber = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); Log.d("Contact", "Name: " + displayName + ", Number: " + phoneNumber); } cursor.close(); ...

    android仿iphone滚轮UI效果

    在Android中,这种效果可以通过`android.widget.NumberPicker`或自定义视图来实现。在iPhone上,对应的组件是`UIPickerView`。 源码实现部分可能包含以下几个关键点: 1. **自定义View**:由于Android原生的`...

    用android编写的电话拨号器

    android:id="@+id/phoneNumber" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入电话号码" /&gt; android:id="@+id/dialButton" android:layout_width="wrap...

    Android拦截外拨电话示例

    String phoneNumber = intent.getStringExtra(TelephonyManager.EXTRA_PHONE_NUMBER); if (isCallAllowed(phoneNumber)) { // 允许拨打电话 Log.d("CallInterceptor", "Call to " + phoneNumber + " is allowed....

    android2.2phone 打电话简单入门实例

    callIntent.setData(Uri.parse("tel:" + phoneNumber)); // 检查权限,Android 6.0以上需要动态申请权限 if (ContextCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager....

    android 电话本 Phonebook

    通常,我们会使用`SQLiteOpenHelper`来管理和操作数据库,创建必要的表(如`contacts`)并定义字段,如`_id`, `name`, `phone_number`, `email`等。在`query()`中,我们根据输入的URI和参数来构造SQL查询语句。 `...

    android仿iphone的滑轮效果

    首先,Android SDK本身提供了`NumberPicker`类,可以实现基本的数字滚动选择功能,但这并不能完全模拟iPhone的滑轮样式。为了达到更精确的仿制效果,我们需要自定义一个View来实现。这通常涉及到对Android的View体系...

    运用Android Studio实现打电话和发短信

    callIntent.setData(Uri.parse("tel:" + phoneNumber)); if (callIntent.resolveActivity(getPackageManager()) != null) { startActivity(callIntent); } ``` 发送短信功能同样使用`Intent`,但是需要更多的配置...

    android_phone_state.rar_android

    这个"android_phone_state.rar_android"可能包含了一个示例项目或者库,用于演示如何在Android应用中实现电话状态监听。让我们深入探讨一下这个主题。 首先,要在Android应用中监听电话状态,你需要使用`...

    android打电话源码

    callIntent.setData(Uri.parse("tel:" + phoneNumber)); // phoneNumber是你要拨打的号码 if (ContextCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { ...

    android实现拨号功能

    然后,我们通过`Intent.ACTION_DIAL`创建一个拨号Intent,将处理后的电话号码通过`Uri.parse("tel:" + phoneNumber)`转化为电话URI。最后,使用`startActivity(intent)`启动拨号界面。如果输入框为空,我们会显示一...

    unity调用Android Api实现短信发送和震动功能

    private static extern void SendSMS(string phoneNumber, string message); [DllImport("UnitySmsVibrator")] private static extern void Vibrate(int duration); } ``` 5. **调用方法**:现在,你可以在C#...

    android_phone_state.zip_android

    这个"android_phone_state.zip_android"压缩包包含了实现这一功能的源代码,为开发者提供了宝贵的参考资料。以下将详细讲解如何在Android应用中监听电话状态。 首先,Android系统通过`TelephonyManager`类提供电话...

Global site tag (gtag.js) - Google Analytics