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

【本demo知识要点】
请查看《Android组件之间的信使intent学习源码,启动activity并传值》
通过本demo可以学习到:
  • 启动打电话程序。
  • 启动发短信程序。
【实现步骤】
  • 实例化intent类;
  • 设置intent的action属性;
  • 设置intent的data属性,注意格式;
  • 启动activity
【注意】
  • 实现打电话时,一定要在AndroidManifest.xml里加入<uses-permission android:name="android.permission.CALL_PHONE"/>来获取权限;
  • 实现打发短信时,一定要在AndroidManifest.xml里加入<uses-permission android:name="android.permission.SEND_SMS"/>来获取权限;
  • <uses-permission />标签加在 <application/>标签外面;
【demo下载】
 Android信使intent学习源码,实现打电话,发短信.zip (49.21 KB, 下载次数: 0, 售价: 1 D币) 
【源码预览】
  1. public class MainActivity extends Activity {
  2.     /**
  3.      * @author 中文demo站:Quanke
  4.      * URL [url]http://www.cndemoz.com[/url]
  5.      * 使用intent实现打电话,发短信 
  6.      * 
  7.      * 布局文件不解释,相信你懂得
  8.      * 
  9.      * 注意:如果需要使用到电话、短信、网络等涉及安全相关的信息都必须在AndroidManifest.xml中声明
  10.      * 声明以后当用户在安装软件的时候会提醒
  11.      * 声明方法,例如<uses-permission android:name="android.permission.CALL_PHONE"/>就是获得打电话权限
  12.      * 但是一定要把此元素放置在application外面,请参考次程序的AndroidManifest.xml文件
  13.      **/

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

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

  32.                 @Override
  33.                 public void onClick(View v)
  34.                 {
  35.                         //把View强制类型转换为Button类型
  36.                         Button button = (Button)v;
  37.                         //实例化intent对象,如果想了解更多请查看api
  38.                         Intent intent = new Intent();
  39.                         switch (button.getId())
  40.                         {
  41.                         case R.id.btnCall:
  42.                                 //设置intent的action属性,参数可以是自定义的,也可以是系统自带的;
  43.                                 //此处为系统自带参数ACTION_CALL,详细说明请查看api,也可以去[url]http://www.cndemoz.com[/url]找找
  44.                                 intent.setAction(intent.ACTION_CALL);
  45.                                 //设置intent的data属性,注意格式一定要为tel:*******
  46.                                 intent.setData(Uri.parse("tel:110"));
  47.                                 //启动activity
  48.                                 startActivity(intent);
  49.                                 break;
  50.                         case R.id.btnSms:
  51.                                 //设置intent的action属性,参数可以是自定义的,也可以是系统自带的;
  52.                                 //此处为系统自带参数ACTION_SENDTO,详细说明请查看api,也可以去[url]http://www.cndemoz.com[/url]找找
  53.                                 intent.setAction(intent.ACTION_SENDTO);
  54.                                 //设置intent的data属性,注意格式一定要为sms:*******
  55.                                 intent.setData(Uri.parse("sms:110"));
  56.                                 //设置发短信的内容
  57.                                 intent.putExtra("sms", "welcome...");
  58.                                 //启动activity
  59.                                 startActivity(intent);
  60.                                 break;

  61.                         default:
  62.                                 break;
  63.                         }
  64.                 }
  65.         };
  66. }
复制代码
详细PDF教程还在制作中。。。敬请关注更新。。。PDF内容预告:
  • intent启动的不同方法。
  • intent的Action属性(自定义action属性、访问系统action属性)
  • intent的Data属性
  • intent的Category属性
  • 。。。。。



中文demo站整理发布

转载请注明出处:http://www.cndemoz.com/thread-10-1-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值