Android短信和拨打电话

时间:2022-11-09 23:58:16


1.自定义短信步骤:

1、在清单文件中声明权限

Android短信和拨打电话

2.获取控件并添加响应事件

  findviewbyid....

setonclicklistener....


  显示的提醒用户是否允许Apk使用短信发送功能
ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.SEND_SMS},-1);

  然后在布局写需要设置的控件,一般分为两种,一种为系统,一种用app发



    1.获取短信管理者
SmsManager manager=SmsManager.getDefault();
注意:如果短信的内容长度超过70,那么70以后的文本会被直接截取掉,所以需要对文本进行一下处理

首先拿到短信的内容
String text =smsText.getText().toString();
调用短信管理者的方法对短信进行分割,
List<String>list=manager.divideMessage(text);
遍历list里面的所以数值
增强for循环
for (String sms_text :list){
发送短信
manager.sendTextMessage(phoneNumber.getText().toString(),null,sms_text,null,null);
}
发送短信
manager.sendTextMessage(phoneNumber.getText().toString(),null,smsText.getText().toString(),null,null);
Toast.makeText(MainActivity.this,"发送成功",Toast.LENGTH_SHORT).show();
}
});
systemSendButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("smsto:"+phoneNumber));
intent.putExtra("sms_body", smsText.getText().toString());
startActivity(intent);

}
});
bodadianhua.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(Intent.ACTION_DIAL);
Uri data = Uri.parse("tel:" +phoneNumber.getText().toString());
intent.setData(data);
startActivity(intent);


}
});

}
}