Android开发之打电话和发短息接口调用

来源:互联网 发布:mac键盘失灵只有开机键 编辑:程序博客网 时间:2024/06/06 12:24

Activity文件
public class MainActivity extends Activity implements OnLongClickListener {private EditText et_main_number;private EditText et_main_sms;private Button btn_main_call;private Button btn_main_send;private OnClickListener onClickListener = new View.OnClickListener() {@Overridepublic void onClick(View v) {if(v==btn_main_call) {//点击打电话//Toast.makeText(MainActivity.this, "点击打电话", 0).show();//1). 创建一个Intent(隐式)//08-28 03:27:09.976: I/ActivityManager(1222): Displayed com.android.dialer/.DialtactsActivity: +535msString action = "android.intent.action.DIAL";action = Intent.ACTION_DIAL;//一样的Intent intent = new Intent(action);//2). 携带数据String number = et_main_number.getText().toString();intent.setData(Uri.parse("tel:"+number)); //<data android:scheme="tel" />//3). startActivity(intent)startActivity(intent);}else if(v==btn_main_send) {//点击发短信Toast.makeText(MainActivity.this, "点击发短信", 0).show();//1). 创建一个Intent(隐式)//08-28 04:00:02.420: I/ActivityManager(1222): Displayed com.android.mms/.ui.ComposeMessageActivity: +132msIntent intent = new Intent(Intent.ACTION_SENDTO);//android.intent.action.SENDTO//2). 携带数据(号码/内容)String number = et_main_number.getText().toString();String sms = et_main_sms.getText().toString();intent.setData(Uri.parse("smsto:"+number));//携带额外数据intent.putExtra("sms_body", sms);//3). startActivity(intent)startActivity(intent);}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//初始化视图对象et_main_number = (EditText) findViewById(R.id.et_main_number);et_main_sms = (EditText) findViewById(R.id.et_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);//给视图对象设置长按监听btn_main_call.setOnLongClickListener(this);btn_main_send.setOnLongClickListener(this);}@Overridepublic boolean onLongClick(View v) {if(v==btn_main_call) {//长按打电话//Toast.makeText(MainActivity.this, "长按打电话", 0).show();//1). 创建一个Intent(隐式)//08-28 03:38:59.717: I/ActivityManager(1222): Displayed com.android.phone/.PrivilegedOutgoingCallBroadcaster: +570msIntent intent = new Intent(Intent.ACTION_CALL);//android.intent.action.CALL//2). 携带数据String number = et_main_number.getText().toString();intent.setData(Uri.parse("tel:"+number));//3). startActivity(intent)startActivity(intent);}else if(v==btn_main_send) {//长按发短信Toast.makeText(MainActivity.this, "长按发短信", 0).show();//1). 得到SmsManager的对象SmsManager smsManager = SmsManager.getDefault();//2). 发送文本信息(短信)String number = et_main_number.getText().toString();String sms = et_main_sms.getText().toString();smsManager.sendTextMessage(number, null, sms, null, null);}return true;//不会再触发点击事件(表示此事件已经被消费了)}}

xml文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="电话号码: " />        <EditText            android:id="@+id/et_main_number"            android:layout_width="fill_parent"            android:layout_height="wrap_content"            android:hint="请输入号码">        </EditText>    </LinearLayout>        <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="短信内容: " />        <EditText            android:id="@+id/et_main_sms"            android:layout_width="fill_parent"            android:layout_height="wrap_content"            android:hint="请输入短信">        </EditText>    </LinearLayout>            <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content" >        <Button            android:id="@+id/btn_main_call"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="打电话" />        <Button            android:id="@+id/btn_main_send"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="发短信" />    </LinearLayout></LinearLayout>

AndroidManifest文件

<!-- 打电话的权限 -->    <uses-permission android:name="android.permission.CALL_PHONE"/>    <!-- 发短信的权限 -->    <uses-permission android:name="android.permission.SEND_SMS"/>



0 0
原创粉丝点击