Android实现手动拨打电话,即点击后跳转到手机默认电话号码输入页面,可以将相应号码传送过去:

Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:10086");

startActivity(intent);

Android实现自动拨打电话,即点击后直接拨通电话,显示为通话中的页面:

Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:10086"));

startActivity(intent);

Android实现手动发送短信,即点击后 跳转到发送短信的页面,可以将把相应内容传送过去:

Uri uri = Uri.parse("smsto:10010");

Intent it = new Intent(Intent.ACTION_SENDTO, uri);

it.putExtra("sms_body", "102");

activity.startActivity(it);

Android实现自动发送短信,即点击后直接发送短信到设置的号码:

方法一:

package com.example.smstest;

import java.util.List;

import android.app.Activity;

import android.app.PendingIntent;

import android.content.Intent;

import android.os.Bundle;

import android.telephony.SmsManager;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class MainActivity extends Activity {

private Button btn;

private String strSms = "";

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

btn = (Button) findViewById(R.id.send);

strSms = "在 Android 2.0 以前 应该使用 android.telephony.gsm.SmsManager 之后应该用 android.telephony.SmsManager;";

btn.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

/*

* 在 Android 2.0 以前 应该使用 android.telephony.gsm.SmsManager 之后应该用

* android.telephony.SmsManager;

*/

// 获取系统默认的短信管理器

SmsManager smsManager = SmsManager.getDefault();

PendingIntent sentIntent = PendingIntent.getBroadcast(

MainActivity.this, 0, new Intent(), 0);

// 如果字数超过70,需拆分成多条短信发送

// 按照每条短信最大字数来拆分短信

if (strSms.length() > 70) {

List msgs = smsManager.divideMessage(strSms);

for (String msg : msgs) {

/*

* 发送短信

*

* smsManager.sendTextMessage(destinationAddress,

* scAddress, text, sentIntent, deliveryIntent)

*

* -- destinationAddress:目标电话号码

*

* -- scAddress:短信中心号码,测试可以不填

*

* -- text: 短信内容

*

* -- sentIntent:发送 -->中国移动 --> 中国移动发送失败 --> 返回发送成功或失败信号

* --> 后续处理 即,这个意图包装了短信发送状态的信息

*

* -- deliveryIntent: 发送 -->中国移动 --> 中国移动发送成功 -->

* 返回对方是否收到这个信息 --> 后续处理

* 即:这个意图包装了短信是否被对方收到的状态信息(供应商已经发送成功,但是对方没有收到)。

*/

smsManager.sendTextMessage("18352513553", null, msg,

sentIntent, null);

}

} else {

smsManager.sendTextMessage("18352513553", null, strSms,

sentIntent, null);

}

}

});

}

}

方法二:

//直接调用短信接口发短信

SmsManager smsManager = SmsManager.getDefault();

List divideContents = smsManager.divideMessage(content);

for (String text : divideContents) {

smsManager.sendTextMessage("150xxxxxxxx", null, text, sentPI, deliverPI);

}

处理返回的发送状态

String SENT_SMS_ACTION = "SENT_SMS_ACTION";

Intent sentIntent = new Intent(SENT_SMS_ACTION);

PendingIntent sentPI = PendingIntent.getBroadcast(context, 0, sentIntent,

0);

// register the Broadcast Receivers

context.registerReceiver(new BroadcastReceiver() {

@Override

public void onReceive(Context _context, Intent _intent) {

switch (getResultCode()) {

case Activity.RESULT_OK:

Toast.makeText(context,

"短信发送成功", Toast.LENGTH_SHORT)

.show();

break;

case SmsManager.RESULT_ERROR_GENERIC_FAILURE:

break;

case SmsManager.RESULT_ERROR_RADIO_OFF:

break;

case SmsManager.RESULT_ERROR_NULL_PDU:

break;

}

}

}, new IntentFilter(SENT_SMS_ACTION));处理返回的接收状态

String DELIVERED_SMS_ACTION = "DELIVERED_SMS_ACTION";

// create the deilverIntent parameter

Intent deliverIntent = new Intent(DELIVERED_SMS_ACTION);

PendingIntent deliverPI = PendingIntent.getBroadcast(context, 0,

deliverIntent, 0);

context.registerReceiver(new BroadcastReceiver() {

@Override

public void onReceive(Context _context, Intent _intent) {

Toast.makeText(context,

"收信人已经成功接收", Toast.LENGTH_SHORT)

.show();

}

}, new IntentFilter(DELIVERED_SMS_ACTION));



Android实现拨打电话和发送短信,Android手机拨打电话、手动发送短信与自动拨打电话、自动发送短信(代码很简单哦)...相关推荐

  1. Android手机拨打电话、手动发送短信与自动拨打电话、自动发送短信(代码很简单哦)

    Android实现手动拨打电话,即点击后跳转到手机默认电话号码输入页面,可以将相应号码传送过去: <span style="font-size:18px;"> Inte ...

  2. ESET最近发现了一款新的Android勒索软件,它通过向受害者的手机的联系人列表发送恶意短信继续传播

    最近ESET研究人员发现了一个新的Android勒索软件家族,它们试图通过向受害者的手机的联系人列表发送恶意短信继续传播. 在Android勒索软件遭遇两年的衰退之后,一个新的Android勒索软件家 ...

  3. win10android文件传输,win10电脑如何发送文件到安卓手机?win10电脑发送文件到安卓手机的方法...

    现在办公离不开电脑,我们在电脑上编辑好了办公文档,需要导入手机里面保存,那么电脑怎么发送文件到安卓手机?从电脑上传送文件到手机上的方法有很多.这里以安卓手机为例,和大家说说将win10电脑发送文件到安 ...

  4. 我们公司的短信接口被刷了,瞬间损失两万,怎么解决?(短信接口被盗刷系列1)

    1 我们公司的短信接口被刷了,瞬间损失两万 前两天的中午像往常一样热,太阳不知疲倦的在天空燃烧,热跑了云彩和鸟儿,马上就要点燃空气和我的脑神经.为我和电脑降温的,是我简陋的书桌上的小电扇,没有它的话, ...

  5. 基于短信的手机控制程序

    原文地址:http://www.apkbus.com/android-57861-1-1.html?fromuid=257244 1.2程序简介 本程序是一个基于短信的手机控制程序,有受控端B和管理端 ...

  6. android 自动接电话

     android系统提供了电话相关的接口供调用,比如获取电话状态,获取手机服务等,也包括获取电话状态.因此可以根据电话状态的不同做不同操作. 本例主要分析一个来电自动接电话的代码,代码是由别人写的 ...

  7. android自定义起止时间的时间刻度尺,Android 自定义View篇(六)实现时钟表盘效果...

    前言 Android 自定义 View 是高级进阶不可或缺的内容,日常工作中,经常会遇到产品.UI 设计出花里胡哨的界面.当系统自带的控件不能满足开发需求时,就只能自己动手撸一个效果. 本文就带自定义 ...

  8. android c++ gizp 调用 so,使用ndk-build编译 android调用的so库

    前沿 编译so的方法有两种方法第一种就是编写原生的makefile文件利用gcc进行编译,这里我讲解的是另外一种.采用NDK提供的ndk-build编译. 简介 使用ndk编译的时候需要介绍它的脚本文 ...

  9. android防止左向右滑出程序,Android向右滑动关闭Activity(高仿知乎微信)

    先上一个效果图,不是很清晰,凑合看下. 大概效果就是,Activity向右滑动,滑动超过屏幕的一半,就关闭,否则,恢复原来的状态. 下面让我们来看下实现原理吧. 1.配置透明主题 要想Activity ...

最新文章

  1. 关于idea plugin测试那些事(纯手工翻译,只为打发时间,如果有错误,欢迎提建议,如果有意见,我相信别家一定更适合你)
  2. UVa 1583 - Digit Generator
  3. 织梦gbk转utf8(数据库篇)
  4. 阿里P7架构师详解微服务链路追踪原理
  5. 如何:优化Hive ZooKeeper Lock Manager实施
  6. redis系列:通过队列案例学习list命令 1
  7. pagehelper插件oracle,带你学习最简单的分页插件PageHelper
  8. 蓝桥杯 ALGO-1 算法训练 区间k大数查询
  9. BFS(双向) HDOJ 3085 Nightmare Ⅱ
  10. java案例代码12--随机码--静态类的使用
  11. Google一些关键词的运用
  12. 格式工厂采样率,比特率怎样设置才能使音频声音大容量小
  13. 怎样对php手册解除锁定,word锁定怎么解锁
  14. 信息收集之 绕过CDN获取真实IP地址
  15. 人啊,就要对自己狠一点!
  16. 使用Navicat自带的导出与使用查询方式的导出区别
  17. 个人免费申请微信支付小微商户指南
  18. Rhinoceros 5 mac版(犀牛三维建模软件)汉化破解版
  19. 【前端学习笔记—canvas标签和使用canvas画哆啦A梦案例】
  20. iOS线下分享《RunLoop》by 孙源@sunnyxx

热门文章

  1. Istio是啥?一文带你彻底了解!
  2. Linux 系统Tick
  3. ipad pro php开发,iPad Pro 2018版本有哪些 2018新iPad Pro各版本区别
  4. jqgrid列和表头不对齐的问题
  5. 考研阅读唐迟视频总结
  6. 快手宣布全链路支持iPhone12系列 HDR视频拍摄、编辑、上传和播放
  7. 如何通过Mac键盘在iPhone、iPad上快速打字?
  8. 对分布式存储系统设计架构的理解
  9. 网络教育计算机基础b卷,计算机应用基础试题b卷
  10. 嵌入式处理器-2.3