Android学习之——操作SIM卡联系人
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent" android:layout_height="match_parent"><LinearLayout android:id="@+id/menu_frame"android:layout_width="match_parent" android:layout_height="match_parent"android:orientation="vertical"><Button android:id="@+id/btnSelect" android:layout_width="match_parent"android:layout_height="wrap_content" android:text="查看SIM卡联系人" /><Button android:id="@+id/btnDelect" android:layout_width="match_parent"android:layout_height="wrap_content" android:text="删除SIM卡联系人"/><TextView android:id="@+id/textView" android:layout_width="wrap_content"android:layout_height="match_parent" android:text="Demo"android:textSize="12sp" android:layout_centerInParent="true" /></LinearLayout>
</ScrollView>
java文件:
@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// inflate the layoutView view = inflater.inflate(R.layout.fragment_text, null);textView = (TextView) view.findViewById(R.id.textView);btnSelect = (Button) view.findViewById(R.id.btnSelect);btnDelete = (Button) view.findViewById(R.id.btnDelect);btnSelect.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {
//我发现开了线程还是会阻塞UI线程,不晓得是什么原因,难道?我需要用AsyncTask?或者是Handler来处理。
//因为忙着玩新手机,所以我暂时也不深究了,哈哈,慢慢来,四儿子想了它一年多了。new Thread(new Runnable() {@Overridepublic void run() {SimQuery();//执行查询操作}}).start();textView.setText(messageString);}});btnDelete.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {new Thread(new Runnable() {@Overridepublic void run() {SimDelete();//执行删除操作}}).start();textView.setText("删除成功!");}});return view;}
相关查询联系人和删除联系人的操作:
private void SimQuery() {//SIM的provider是IccProvider,IccProvider的Uri是content://icc/adnUri uri = Uri.parse("content://icc/adn");Cursor cursor = getActivity().getContentResolver().query(uri, null,null, null, null);Log.v("MAIN", "-----------" + cursor.getCount());while (cursor.moveToNext()) {String id = cursor.getString(cursor.getColumnIndex(People._ID));String name = cursor.getString(cursor.getColumnIndex(People.NAME));String phoneNumber = cursor.getString(cursor.getColumnIndex(People.NUMBER));messageString += "id:" + id + " name:" + name + " phoneNumber:"+ phoneNumber + "\n\r";Log.v("MAIN", "--->>>_id: " + id + "--->>>name:" + name+ "--->>>phone number:" + phoneNumber + "\n\r");}cursor.close();//注意一定要close
}private void SimDelete() {Uri uri = Uri.parse("content://icc/adn");Cursor cursor = getActivity().getContentResolver().query(uri, null,null, null, null);Log.v("MAIN", "------------->>>>>" + cursor.getCount());while (cursor.moveToNext()) {String name = cursor.getString(cursor.getColumnIndex(People.NAME));String phoneNumber = cursor.getString(cursor.getColumnIndex(People.NUMBER));String where = "tag='" + name + "'";where += " AND number='" + phoneNumber + "'";getActivity().getContentResolver().delete(uri, where, null);}cursor.close();//注意一定要close
}
关于修改联系人和插入联系人的操作,大家就请移步链接吧,如果我有这个需要,我就会写出来的。
相关学习链接:http://my.eoe.cn/kris/archive/1605.html http://my.eoe.cn/kris/archive/1688.html
Android学习之——操作SIM卡联系人相关推荐
- Android SIM卡联系人操作总结
--- by Ruiming.Lv 在Android中,对SIM中的联系人进行操作,需要通过系统提供的Content Provider进行,该Provider就是Telphony中的IccProvid ...
- android sim卡联系人存储格式,Android SIM卡联系人的增删改查操作
手机在存储联系人时支持存储到手机或者sim卡,本文主要讲述Android的sim卡中联系人是如何操作的. 1.权限 由于操作联系人的信息,所以联系人的读取和写入是必不可少的. 2.URI URI的创建 ...
- android负责sim卡的应用,android读取sim卡联系人
SIM的provider是IccProvider.既然是provider,就和操作Contact的provider类似的,只是有一些微小差别. IccProvider的Uri是content://ic ...
- android中对sim卡联系人的增删改查以及监听sim卡联系数据的改变
sim卡联系人的增删改查主要是通过ContentProvider来进行操作的,在android中对sim卡联系人操作的provider是定义在IccProvider.java这个类中的,这个类位于an ...
- android sim卡联系人存储格式,如何在Android设备上将联系人复制到SIM卡
如何将联系人复制到SIM卡 以下部分是将联系人从计算机和Android手机存储卡复制到Android上的SIM卡的简单步骤.准备?让我们开始吧. 步骤1.安装并运行此Android管理器 开始时,在您 ...
- android获取sim卡手机号码,Android 读取SIM卡联系人
Android 5.0之前的版本中,系统只支持单卡,可以使用URI -- content://icc/adn 读取到sim卡里的联系人.附:IccProvider(4.4.4_r1) Android ...
- android sim卡联系人存储格式,Android获取手机通讯录、sim卡联系人及调用拨号界面方法...
android获取手机通讯录联系人信息 private void getPhoneContacts() { ContentResolver resolver = this.getContentReso ...
- 查询SIM卡联系人——源码流程简介
查询SIM卡联系人 查询SIM卡中的联系人使用的方法为 query( ) 方法,与操作数据库中的查询方法极其类似,使用方式与如下类似: getContentResolver().query(" ...
- 安卓手机快速删除所有SIM卡联系人
安卓手机快速删除所有SIM卡联系人 方法一: 1. 打开[联系人] 2.点击[Menu]键 3.选择[查看] 4.在[联系人来源]中只钩选[SIM]--钩选选完按[确定] 5.这时联系人页面中就只显示 ...
最新文章
- np.random.seed用法
- java 怎么中断一个线程
- 职责链模式 php,php Chain of Responsibility 职责链模式
- [转载]WPF – 使用触发器
- modnet是一个无需绿幕,扣人像,笔记本上跑到10-20帧
- django-oscar的物流状态pending修改以及分析源码解决报错:The new status 'xxx' is not valid for this order
- HyperVolume多目标评价指标概述
- dd 转换和拷贝复制文件
- C/C++教程 第十七章 —— MFC开发多人聊天室
- 太极助手发公开信解释越狱捆绑原因
- 支付行业常用名词解释
- Linux 各类软件整理汇总
- JS+CSS实现幻灯片
- MAC版SecureCRT+SecureFX 安装说明
- 软件开发流程:软件运维流程
- word怎么加入html,Word中怎么放入html
- 搜狗语音云开发入门(二)——使用离线语音识别服务
- 最全面的安卓编码规范
- [nlp] LLS减少学习捷径:分析和缓解伪特征标签相关性
- dr.oracle素颜霜好用吗,Dr.Glamour素颜霜BB霜哪个好用?这几个误千万不要踩
热门文章
- Python3 print pprint
- 问题 E: 1.10 旅行时间 根据火车的出发时间和到达时间,编写程序计算整个旅途所用的时间。
- jupyter notebook第七章seaborn库的一些案例分析加相关函数的解析
- spark 客户端工具_星火应用商店 Spark-Store
- cd命令回到上级目录和回到根目录
- Openstack基础架构
- CentOS6.5下使用NetHogs监控进程网络使用情况
- Variant类型在各语言中的参数传递
- MNN实践[C++版本]
- InstallShield 2010集成.net Framework 4的安装包制作