Android 调用发送短信的方法
作者:1140566087 发布时间:2023-05-30 22:56:40
标签:Android,调用,短信
Android 调用发送短信的方法
功能:调用发送短信功能
1 、 权限
<uses-permission android:name="android.permission.SEND_SMS"/>
2、具体实现
Uri smstoUri = Uri.parse("smsto:");
Intent intent = new Intent(Intent.ACTION_VIEW,smstoUri);
intent.putExtra("address","电话号码"); // 没有电话号码的话为默认的,即显示的时候是为空的
intent.putExtra("sms_body","短信内容"); // 设置发送的内容
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
Activity 代码:
public class MainActivity extends Activity {
private EditText phone ,message;
private Button sendbtn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
phone = (EditText) findViewById(R.id.phone);
message = (EditText) findViewById(R.id.message);
sendbtn = (Button) findViewById(R.id.sendbtn);
//点击发送短信
sendbtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String p = phone.getText().toString();
String m = message.getText().toString();
Uri smstoUri = Uri.parse("smsto:"); // 解析地址
Intent intent = new Intent(Intent.ACTION_VIEW,smstoUri);
intent.putExtra("address",p); // 没有电话号码的话为默认的,即显示的时候是为空的
intent.putExtra("sms_body",m); // 设置发送的内容
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
}
});
}
}
Mainfest.xml 配置文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.message"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="10" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.message.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<!-- 发送短信权限 -->
<uses-permission android:name="android.permission.SEND_SMS" />
</manifest>
布局示意图:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<EditText
android:id="@+id/phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:ems="10"
android:inputType="number" >
<requestFocus />
</EditText>
<Button
android:id="@+id/sendbtn"
style="?android:attr/buttonStyleSmall"
android:layout_width="150dp"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="28dp"
android:text="Send" />
<EditText
android:id="@+id/message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/sendbtn"
android:layout_alignLeft="@+id/phone"
android:layout_marginBottom="48dp"
android:ems="10" />
</RelativeLayout>
来源:http://sunzone.iteye.com/blog/1998110


猜你喜欢
- 介绍Spring Profiles 提供了一套隔离应用配置的方式,不同的 profiles 提供不同组合的配置,在不同的环境中,应用在启动时
- Spring Boot+Vue 前后端分离项目架构项目流程:1. SpringBoot 后端项目1、新建一个 SpringBoot 工程,并
- SpeSqliteManager4Android改动日志2023.2.14 完成SQLiteOpenHelper 2023.2.23 完成r
- 概述ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。ArrayList不是
- 引言本文收集了我在看Lucene源码中遇到的所有的对单值(int,long,float,double)的压缩算法,可能一种类型针对不同的场景
- 本文实例为大家分享了Android studio实现简单计算器的具体代码,供大家参考,具体内容如下需求分析及概要设计目的开发一个简单的计算器
- 本文实例讲述了Java编程实现判断网上邻居文件是否存在的方法。分享给大家供大家参考,具体如下:由于java不支持通过//192.168.19
- 本文实例讲述了C#中DataSet转化为实体集合类的方法,分享给大家供大家参考。具体实现方法如下:/// <summary>//
- 最近发现线上监控有个SQL调用量很大,但是方法的调用量不是很大,查看接口实现,发现接口是做了缓存操作的,使用Spring cache缓存注解
- 目录前言示例参考:前言按需加载对象延迟加载实际是推迟进行创建对象,直到对其调用后才进行创建初始化,延迟(懒加载)的好处是提高系统性能,避免不
- 前言Go 语言比 Java 语言性能优越的一个原因,就是轻量级线程Goroutines(协程Coroutine)。本篇文章深入分析下 Jav
- 介绍Java状态模式(State Pattern)是一种面向对象的设计模式,它将对象的状态封装成独立的状态对象,并将对象的行为与状态对象解耦
- “Java is still not dead—and people are starting to figure that out.”本教
- 本文实例讲述了Java泛型定义与用法。分享给大家供大家参考,具体如下:1. 泛型的由来先看如下代码:import java.util.Lis
- Android 实现获取手机里面的所有图片详解及实例实现代码:public class MainActivity extends Activ
- 重新指定分配默认值的参数时,可以显式地为指定参数名称赋值,隐式指定的时候,是根据方法参数的顺序,靠c#编译器的推断。 代码示例: void
- 一、继承引言继承关系可以对不同模块的依赖版本做统一管理,因为子模块中的依赖基本都继承于父模块,父模块中指定哪个版本,子模块就继承哪个版本,可
- 概述从今天开始, 小白我将带大家开启 Java 数据结构 & 算法的新篇章.链表链表 (Linked List) 是一种递归的动态数
- 最近的项目中,想做到一种能够吸引眼球的一种角色选择浏览效果Demo源码:点击打开链接最终实现了下按如下图这么一种浏览效果:效果图一效果图二可
- 在我们对数组或者集合类进行操作的时候,经常会遇到这样的需求,比如:是否包含某一个“匹配规则”的元素是