Android信使intent学习源码,实现打电话,发短信

[b]【本demo知识要点】[/b]
请查看《Android组件之间的信使intent学习源码,启动activity并传值》
通过本demo可以学习到:
启动打电话程序。
启动发短信程序。
[b]【实现步骤】[/b]
实例化intent类;
设置intent的action属性;
设置intent的data属性,注意格式;
启动activity
[color=red][b]【注意】[/b]
实现打电话时,一定要在AndroidManifest.xml里加入来获取权限;
实现打发短信时,一定要在AndroidManifest.xml里加入来获取权限;
标签加在 标签外面;[/color]
[b]【demo下载】[/b]
Android信使intent学习源码,实现打电话,发短信.zip (49.21 KB, 下载次数: 0, 售价: 1 D币)
7 天前 上传 下载次数: 0
售价: 1 D币 [记录]

[b]【源码预览】[/b]


public class MainActivity extends Activity {
/**
* @author 中文demo站:Quanke
* URL [url]http://www.cndemoz.com[/url]
* 使用intent实现打电话,发短信
*
* 布局文件不解释,相信你懂得
*
* 注意:如果需要使用到电话、短信、网络等涉及安全相关的信息都必须在AndroidManifest.xml中声明
* 声明以后当用户在安装软件的时候会提醒
* 声明方法,例如就是获得打电话权限
* 但是一定要把此元素放置在application外面,请参考次程序的AndroidManifest.xml文件
**/

//代表按钮对象的引用
private Button btnCall,btnSms;
//复写父类当中的onCreate方法,Activity第一次运行时会调用这个方法
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//为Activity设置布局管理文件
setContentView(R.layout.main);
//以下两行代码是根据控件的ID来得到控件对象
btnCall=(Button)findViewById(R.id.btnCall);
btnSms=(Button)findViewById(R.id.btnSms);
//为按钮对象设置监听器对象
btnCall.setOnClickListener(listenter);
btnSms.setOnClickListener(listenter);

}
//这种设置监听器的方法是谷歌公司推荐用的,不解释
private OnClickListener listenter = new OnClickListener()
{

@Override
public void onClick(View v)
{
//把View强制类型转换为Button类型
Button button = (Button)v;
//实例化intent对象,如果想了解更多请查看api
Intent intent = new Intent();
switch (button.getId())
{
case R.id.btnCall:
//设置intent的action属性,参数可以是自定义的,也可以是系统自带的;
//此处为系统自带参数ACTION_CALL,详细说明请查看api,也可以去[url]http://www.cndemoz.com[/url]找找
intent.setAction(intent.ACTION_CALL);
//设置intent的data属性,注意格式一定要为tel:*******
intent.setData(Uri.parse("tel:110"));
//启动activity
startActivity(intent);
break;
case R.id.btnSms:
//设置intent的action属性,参数可以是自定义的,也可以是系统自带的;
//此处为系统自带参数ACTION_SENDTO,详细说明请查看api,也可以去[url]http://www.cndemoz.com[/url]找找
intent.setAction(intent.ACTION_SENDTO);
//设置intent的data属性,注意格式一定要为sms:*******
intent.setData(Uri.parse("sms:110"));
//设置发短信的内容
intent.putExtra("sms", "welcome...");
//启动activity
startActivity(intent);
break;

default:
break;
}
}
};
}

    推荐阅读