Android实验二:电话拨号和短信发送

   日期:2020-05-24     浏览:118    评论:0    
核心提示:Android实验:电话拨号和短信发送1.界面布局2.代码实现3.效果实验四 Android程序间通信(2课时)一、实验目的1、学习android程序之间的通信方法。二、实验内容1、编写程序,实现短信发送的功能,要求程序提供用户输入电话号码和短信内容的界面。2、编写程序,实现电话拨号的功能,要求程序提供用户输入电话号码界面。三、实验步骤1、建立一个android工程,修改main.xml文件并编写程序代码,设计一个实现短信发送的功能的程序,要求程序提供用户输入电话号码和短信内容的界面。2、移动开发

Android实验:电话拨号和短信发送

  • 1.界面布局
  • 2.代码实现
  • 3.效果

实验四 Android程序间通信(2课时)
一、实验目的
1、学习android程序之间的通信方法。
二、实验内容
1、编写程序,实现短信发送的功能,要求程序提供用户输入电话号码和短信内容的界面。
2、编写程序,实现电话拨号的功能,要求程序提供用户输入电话号码界面。
三、实验步骤
1、建立一个android工程,修改main.xml文件并编写程序代码,设计一个实现短信发送的功能的程序,要求程序提供用户输入电话号码和短信内容的界面。
2、建立一个android工程,修改main.xml文件及清单文件,并编写程序代码,设计一个电话拨号功能的程序,要求程序提供用户输入电话号码的界面。
四、考核标准:
1、完成全部题目,设计合理,结果正确;评定为A。
2、完成部分题目,设计比较合理,结果正确;根据实际情况评定为B或C。
3、未独立完成实验要求;评定为D。

1.界面布局

activity_main.xml文件

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"    >
    <LinearLayout
        android:layout_width="410dp"
        android:layout_height="205dp"
        android:orientation="vertical"
        tools:layout_editor_absoluteX="4dp"
        tools:layout_editor_absoluteY="4dp">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            tools:ignore="MissingConstraints">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="电话号码: " />
            <EditText
                android:id="@+id/ed_main_number"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:ems="10"
                android:hint="请输入号码"
                android:inputType="textPersonName" />
        </LinearLayout>
        <LinearLayout
            android:layout_width="410dp"
            android:layout_height="51dp"
            tools:ignore="MissingConstraints">
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="短信内容: " />
            <EditText
                android:id="@+id/ed_main_sms"
                android:layout_width="332dp"
                android:layout_height="wrap_content"
                android:hint="请输入短信内容: " />
        </LinearLayout>
        <LinearLayout
            android:layout_width="411dp"
            android:layout_height="45dp"
            android:orientation="horizontal"
            tools:ignore="MissingConstraints">
           <Button
                android:id="@+id/btn_main_call"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:text="打电话" />
            <Button
                android:id="@+id/btn_main_send"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="发短信" />
        </LinearLayout>
    </LinearLayout>


</androidx.constraintlayout.widget.ConstraintLayout>

2.代码实现

MainActivity:

public class MainActivity extends AppCompatActivity {
    //初始化操作视图
    private EditText ed_main_number;
    private EditText ed_main_sms;
    private Button btn_main_call;
    private Button btn_main_send;
    private View.OnClickListener onClickListener = new View.OnClickListener(){
        @Override
        public void onClick(View v){
            if(v==btn_main_call){//点击打电话
// Toast.makeText(MainActivity.this,"点击打电话",0).show();
                //1.创建一个Intent(隐式)
                String action = Intent.ACTION_DIAL;
                Intent intent = new Intent(action);
                //2.携带数据
                String number=ed_main_number.getText().toString();
                intent.setData(Uri.parse("tel:"+number));//tel固定前缀+电话号码
                //3.startActivity(intent)
                startActivity(intent);
            }else if (v==btn_main_send){//点击发短信
// Toast.makeText(MainActivity.this,"点击发短信",0).show();
                //1.创建一个Intent
                Intent intent = new Intent(Intent.ACTION_SENDTO);
                //2.携带数据
                String number = ed_main_number.getText().toString();
                String sms = ed_main_sms.getText().toString();
                intent.setData(Uri.parse("smsto:"+number));
                //携带额外数据
                intent.putExtra("sms_body",sms);
                //3.startActivity(intent)
                startActivity(intent);
            }
        }
    };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //初始化视图对象
        ed_main_number=(EditText)findViewById(R.id.ed_main_number);
        ed_main_sms=(EditText)findViewById(R.id.ed_main_sms);
        btn_main_call=(Button) findViewById(R.id.btn_main_call);
        btn_main_send=(Button) findViewById(R.id.btn_main_send);
        //给视图对象设置点击监听
        btn_main_call.setOnClickListener(onClickListener);
        btn_main_send.setOnClickListener(onClickListener);
    }

}

以上只是实验的简单实现,如果直接通过程序来调起打电话和发短信的功能的话,还得在中添加对应的权限。(不过好像因为版本问题,高版本下此方法已失效)

3.效果


点击打电话,调起拨号并且将值传入

点击发短信,效果相同

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
更多>相关资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服