读书人

Android信使intent学习源码兑现打电

发布时间: 2012-07-15 20:11:38 作者: rapoo

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币)
7 天前 上传 下载次数: 0
售价: 1 D币 [记录]

【源码预览】

public class MainActivity extends Activity {    /**     * @author 中文demo站:Quanke     * URL [url]http://www.cndemoz.com[/url]     * 使用intent实现打电话,发短信      *      * 布局文件不解释,相信你懂得     *      * 注意:如果需要使用到电话、短信、网络等涉及安全相关的信息都必须在AndroidManifest.xml中声明     * 声明以后当用户在安装软件的时候会提醒     * 声明方法,例如<uses-permission android:name="android.permission.CALL_PHONE"/>就是获得打电话权限     * 但是一定要把此元素放置在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;                        }                }        };}
1 楼 zhu_ch 2011-09-09 学下 注释很清楚! 2 楼 cndemoz 2011-09-15 谢谢支持,还会有更多内容的

读书人网 >Android

热点推荐