<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
public class Address extends Activity {
private static final String TAG="App";
ListView listView;
ListAdapter adapter; //声明一个适配器名称
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.addr);
listView=(ListView) findViewById(R.id.list);
//从数据库获取联系人姓名和电话号码
Cursor cur=this.getContentResolver().query(People.CONTENT_URI,null, null,null,null);
adapter=new SimpleCursorAdapter(this,android.R.layout.simple_list_item_2,cur,new String[]{People.NAME,People.NUMBER},new int[]{android.R.id.text1,android.R.id.text2});
//SimpleCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to) 构造函数参数
this.startManagingCursor(cur);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
public void onItemClick(AdapterView<?> arg0, View arg1, int position,
long arg3){
// TODO Auto-generated method stub
//从指针的封装类中获得选中项的电话号码并拨号
CursorWrapper wrapper=(CursorWrapper)listView.getItemAtPosition(position);//返回值是Object类需要向下转型成CursorWrapper类型
int columnIndex=wrapper.getColumnIndex(People.NUMBER);//返回从0开始的索引,如果列名不存在将返回-1
if(!wrapper.isNull(columnIndex)){
String number=wrapper.getString(columnIndex);
Log.d(TAG,"number="+number);
// //判断电话号码的有效性
if(PhoneNumberUtils.isGlobalPhoneNumber(number)){
//短信发送
//获得发送短信的管理器,使用的是android.telephony.SmsManager
SmsManager smsManager = SmsManager.getDefault();
//使用短信管理器发送短信内容
//参数一为短信接收者
//参数三为短信内容
//其他可以设为null
String msg="分享一个好东西。。。。";
smsManager.sendTextMessage(number, null, msg, null, null);
Toast.makeText(Address.this,"发送成功", Toast.LENGTH_SHORT).show();
//拨号
//Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse("tel://"+ number));
//startActivity(intent);
}}
}
});
}
}
分享到:
相关推荐
以上就是如何在Android Studio中获取通讯录姓名和手机号,以及实现打电话和发送短信的基本步骤。在实际开发中,还需要考虑权限处理的用户体验,比如提供合理的提示信息,并处理权限未被授予的情况。同时,针对不同...
最后,“通讯录拨号发短信”是用户最常使用的功能之一。拨号盘不仅应允许用户输入电话号码直接拨打电话,还应具备快速查找和选择联系人的能力,用户只需输入姓名或部分号码即可搜索到对应联系人。短信功能则要求用户...
本项目“基于SQLite做登录界面、用户管理、通讯录的发短信、打电话应用”充分利用了SQLite的功能,为用户提供了安全且功能丰富的私密电话应用。 首先,登录界面是用户进入应用的第一步。这里,开发者可能使用了...
// 处理短信内容、发件人和时间 } cursor.close(); ``` 以上代码实现了Android中的电话、短信、通讯录、通话记录和短信记录的基本操作。在实际应用中,还需要考虑权限管理、异常处理、UI交互等多个方面,以确保...
这个应用通常包括联系人的增加、删除、修改和查询功能,同时还能直接拨打电话和发送短信。下面将详细介绍这些核心知识点: 1. **数据存储**:Android系统提供SQLite数据库来存储联系人数据。每个联系人作为一个记录...
【酷派8150官方拨号盘与通讯录】是针对酷派8150智能手机的一款特定应用软件,主要用于电话拨打和联系人管理。在Android操作系统中,拨号盘和通讯录是手机的核心功能,它们直接影响到用户的日常通信体验。下面我们将...
在本项目中,标题"通讯录(安卓源码,可以添加联系人和删除,查找,对联系人可以拨打,发短信)"表明我们拥有的是一款针对Android平台的通讯录应用的源代码。这款应用允许用户执行多种操作,包括添加、删除联系人,...
本项目是一个类似360通讯录的第三方通讯录软件项目源码,可以实现接管系统的拨号通讯录和短信等功能,目前的实用意义不大,因为现在一些新的安卓机的通讯录都做的比较人性化了,虽然安卓系统原生的通讯录还是有点反...
本文将深入探讨这款应用的核心功能——增删查改、字母排列、查找、拨号及短信,以及其背后的技术实现。 首先,"增删查改"是通讯录基础且关键的功能。在"我的全能通讯录"中,用户可以轻松添加新的联系人信息,包括...
再者,实现通讯录的打电话和发短信功能,需要利用到Android的Intent机制。Intent是Android中用来启动活动或服务的一种对象,可以理解为一种消息传递。当用户点击某个联系人的电话号码时,需要创建一个Intent,指定...
简单的安卓拨号器源代码,可以实现拨号,查看,添加,联系人,发送短信.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
在Android平台上,开发人员可以利用Android Studio来实现与通信相关的功能,如打电话和发送短信。本文将详细讲解如何在Android应用中集成这些功能,并确保遵循正确的权限管理。 首先,我们需要在项目的`...
通过Intent,我们可以启动拨号器应用拨打电话,或者打开短信应用发送短信。在通讯录应用中,需要创建意图来触发这些操作。 6. **权限管理**:在Android中,拨打电话和发送短信需要获取相应的系统权限。开发者需要在...
安卓通讯录集成了备份、分享、发布、拨号、发短信、发邮件、地图搜索等功能。而且是完全独立于系统的应用。一旦录入后可随时分享给好友。 非常适合同学录、公司通讯录等。应用程序小巧而又功能强大,是社交联络的...
在通讯录应用中,你可以使用Intent来启动拨号器或短信应用,进行实际的通话或发短信操作。 最后,如果你想要增加通话和短信功能,需要调用Android的TelephonyManager和SmsManager API。前者允许应用获取设备的通话...
本项目是一套用户体验做的很赞的安卓通讯录和短信项目源码 尤其是号码的拨打界面项目先是根据联系人的名字翻译出对应的汉语拼音名 在输入数字的时候根据数字和字母的两种方式进行联系人匹配 看一下下面的那张输入有...
8. **集成其他服务**:Android通讯录可以与短信、通话记录、社交应用等深度集成,实现一键拨号、发送消息等功能。 9. **性能优化**:对于大量联系人的处理,优化查询性能、内存占用和响应速度是必要的。这可能涉及...
【安卓通讯录源码完整版】是一个专门为Android平台设计的通讯录应用的源代码实现,它提供了全面的联系人管理功能,包括导入系统联系人、联系人的增删改查、拨打电话以及发送短信等核心功能。这个源码是开发者学习...
2. **UI设计**:考虑用户体验,设计合理的界面布局,如使用ListView或RecyclerView展示联系人列表,提供拨号键盘等。 3. **权限管理**:使用拨打电话和发送短信功能,需要在Manifest.xml中声明相应的权限。 4. **...