电话拨号器
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/edt1"
android:inputType="phone"
android:hint="请输入电话号码"
android:layout_weight="8"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btn1"
android:text="打电话"
android:onClick="onCall"
android:layout_weight="2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<EditText
android:id="@+id/edt2"
android:inputType="textMultiLine"
android:gravity="left|top"
android:minLines="10"
android:hint="请在此输入短信内容"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:layout_gravity="right"
android:id="@+id/btn2"
android:text="发短信"
android:onClick="onSendMsg"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
设计步骤
![image.png](/uploads/projects/hackdoors@radrox/0974614b5b14e7f5b12a057387a80284.png)
![image.png](/uploads/projects/hackdoors@radrox/66e8194d510477007210164ab7d11843.png)
![image.png](/uploads/projects/hackdoors@radrox/9562bf4e2205a75b823c1ba6767f12ee.png)
![image.png](/uploads/projects/hackdoors@radrox/e01fce297af742c7bfcc0c44891a6566.png)
相关代码
package com.bluelesson.phoneandmessage;
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.telecom.Call;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onCall(View view) {
//获取电话号码
EditText editText = findViewById(R.id.edt1);
String phone = editText.getText().toString();
//1)创建一个意图对象
Intent intent = new Intent();
//2)设置打电话动作
intent.setAction(Intent.ACTION_CALL);
//3)打包数据,方人员Intent
Uri uri = Uri.parse("tel:"+phone);
intent.setData(uri);
//4)根据意图对象启动对应activity
startActivity(intent);
}
public void onSendMsg(View view) {
}
}
权限问题
![image.png](/uploads/projects/hackdoors@radrox/9630e6bd196848372e7909752d1d30ed.png)
短信发送器
![image.png](/uploads/projects/hackdoors@radrox/80ddba1a9fca9ab8ed28842770781801.png)
![image.png](/uploads/projects/hackdoors@radrox/7b522da7abccdf01b411de2748da0eb0.png)
![image.png](/uploads/projects/hackdoors@radrox/1d6fcddf0f86a65a4849f898b46c8392.png)
相关代码
package com.bluelesson.phoneandmessage;
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.telecom.Call;
import android.telephony.SmsManager;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onCall(View view) {
//获取电话号码
EditText editText = findViewById(R.id.edt1);
String phone = editText.getText().toString();
//1)创建一个意图对象
Intent intent = new Intent();
//2)设置打电话动作
intent.setAction(Intent.ACTION_CALL);
//3)打包数据,方人员Intent
Uri uri = Uri.parse("tel:"+phone);
intent.setData(uri);
//4)根据意图对象启动对应activity
startActivity(intent);
}
public void onSendMsg(View view) {
//1.获取电话号码
String phone = ((EditText)findViewById(R.id.edt1)).getText().toString();
//2.获取短信内容
String content = ((EditText)findViewById(R.id.edt2)).getText().toString();
//3.获取SMS管理器对象
SmsManager smsManager = SmsManager.getDefault();
//4.拆分短信
ArrayList<String> strings = smsManager.divideMessage(content);
//5.发送短信
smsManager.sendMultipartTextMessage(phone,null,strings,null,null);
}
}
权限问题
![image.png](/uploads/projects/hackdoors@radrox/0016069a3971748292a4122ff78493bc.png)