界面布局:

activity_main.xml

  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. tools:context=".MainActivity" >
  6.  
  7. <TextView
  8. android:id="@+id/phonenumber_text"
  9. android:layout_width="match_parent"
  10. android:layout_height="wrap_content"
  11. android:text="@string/phonenumber" />
  12.  
  13. <EditText
  14. android:id="@+id/phonenumber_edit"
  15. android:layout_width="match_parent"
  16. android:layout_height="wrap_content"
  17. android:layout_below="@id/phonenumber_text"
  18. android:inputType="phone" >
  19. </EditText>
  20.  
  21. <TextView
  22. android:id="@+id/phonenumber_text2"
  23. android:layout_width="match_parent"
  24. android:layout_height="wrap_content"
  25. android:layout_below="@id/phonenumber_edit"
  26. android:text="@string/phonenumber" />
  27.  
  28. <EditText
  29. android:id="@+id/message_edit"
  30. android:layout_width="match_parent"
  31. android:layout_height="wrap_content"
  32. android:layout_below="@id/phonenumber_text2"
  33. android:lines="5" />
  34.  
  35. <Button
  36. android:id="@+id/call_button"
  37. android:layout_width="wrap_content"
  38. android:layout_height="wrap_content"
  39. android:layout_alignParentLeft="true"
  40. android:layout_below="@id/message_edit"
  41. android:onClick="callphone"
  42. android:text="call" />
  43.  
  44. </RelativeLayout>

java代码:

  1. import android.annotation.SuppressLint;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.telephony.SmsManager;
  5. import android.text.TextUtils;
  6. import android.view.View;
  7. import android.view.View.OnClickListener;
  8. import android.widget.Button;
  9. import android.widget.EditText;
  10. import android.widget.Toast;
  11.  
  12. import java.util.ArrayList;
  13.  
  14. public class SendMessage extends Activity implements OnClickListener {
  15.  
  16. private EditText phonenumber_edit;
  17. private EditText content_eidt;
  18. private Button Send_button;
  19. private String content ;
  20. private String phoneNumber;
  21.  
  22. @Override
  23. protected void onCreate(Bundle savedInstanceState) {
  24. super.onCreate(savedInstanceState);
  25. setContentView(R.layout.activity_main);
  26. initViews();
  27. }
  28. /**
  29. *
  30. * @Title: initViews
  31. * @Description: TODO(初始化布局文件)
  32. * @param 设定文件
  33. * @return void 返回类型
  34. * @throws
  35. */
  36. private void initViews() {
  37. phonenumber_edit = (EditText)findViewById(R.id.phonenumber_edit);
  38. content_eidt = (EditText)findViewById(R.id.message_edit);
  39. Send_button = (Button)findViewById(R.id.call_button);
  40. Send_button.setOnClickListener(this);
  41. }
  42. /**
  43. *
  44. * @Name onClick
  45. * @Description TODO(按钮单击事件处理)
  46. * @param v
  47. * @see android.view.View.OnClickListener#onClick(android.view.View)
  48. * @Date 2013-12-8 下午10:28:30
  49. *
  50. */
  51. @SuppressLint("NewApi")
  52. @Override
  53. public void onClick(View v) {
  54. switch (v.getId()) {
  55. //打你发送短信按钮
  56. case R.id.call_button:
  57. //取得短信内容
  58. content = content_eidt.getText().toString().trim();
  59. //取得手机号码
  60. phoneNumber = phonenumber_edit.getText().toString().trim();
  61. //判断字符是否为空
  62. if(TextUtils.isEmpty(content)||TextUtils.isEmpty(phoneNumber)){
  63. Toast.makeText(getApplicationContext(), "请输入内容", Toast.LENGTH_LONG).show();
  64. return;
  65. }
  66. //短信发送
  67. SmsManager smsManager = SmsManager.getDefault();
  68. ArrayList<String> contents = smsManager.divideMessage(content);
  69. for (String string : contents) {
  70. smsManager.sendTextMessage(phoneNumber, null, string, null, null);
  71. }
  72. Toast.makeText(getApplicationContext(), "短信已经发送", Toast.LENGTH_LONG).show();
  73. break;
  74.  
  75. default:
  76. break;
  77. }
  78.  
  79. }
  80. }

权限设置:

  1. <!-- 发送短信权限的权限 -->
  2. <uses-permission android:name="android.permission.SEND_SMS" />

android基础知识点复习之短信发送的更多相关文章

  1. Android短彩信源码解析-短信发送流程(三)

    3.短信pdu的压缩与封装 相关文章: ------------------------------------------------------------- 1.短信发送上层逻辑 2.短信发送f ...

  2. Android短彩信源码解析-短信发送流程(二)

    转载请注明出处:http://blog.csdn.net/droyon/article/details/11699935 2,短彩信发送framework逻辑 短信在SmsSingleRecipien ...

  3. Android系统应用Mms之Sms短信发送流程(Mms应用部分)二

    1. 新建一条短信, 在发送短信之前, 首先创建的是一个会话Conversation, 以后所有与该接收人(一个或多个接收人)的消息交互, 都在该会话Conversation中. ComposeMes ...

  4. Android中实现短信发送的一种方式

    SendSmsActivity.java: package com.test.smsmangerdemo.sendsmsactivity; import android.support.v7.app. ...

  5. Android Sms短信发送

    界面布局: 具体代码: private void sendSms() { // 获取电话号码和短信内容 String number = number1.getText().toString(); St ...

  6. C#利用Web Service实现短信发送(转)

    通过编程方式实现短信息的发送对很多人来说是一件比较烦杂的事情,目前一般的解决方法是通过计算机和手机的连线,通过可对手机编程的语言编写相关的手机短信息程序来实现,而这种方法对于一般人来说是很难达到的,因 ...

  7. Android手机上监听短信的两种方式

    Android手机上监听短信有两种方式: 1. 接受系统的短信广播,操作短信内容. 优点:操作方便,适合简单的短信应用. 缺点:来信会在状态栏显示通知信息. AndroidManifest.xml: ...

  8. Android 解决双卡双待手机解析短信异常

    开发中,难免会遇到各种各样的适配问题,尤其是经过深度修改定制过的系统,有的无论是软硬件上都有很大的区别,这里不得不提到一种奇葩的机型,没错,那就是双卡双待的手机(比如XT800, A60, S8600 ...

  9. 短信发送接口被恶意访问的网络攻击事件(三)定位恶意IP的日志分析脚本

    前言 承接前文<短信发送接口被恶意访问的网络攻击事件(二)肉搏战-阻止恶意请求>,文中有讲到一个定位非法IP的shell脚本,现在就来公布一下吧,并没有什么技术难度,只是当时花了些时间去写 ...

随机推荐

  1. iOS 导航栏 不透明

    UINavigationBar.appearance().translucent = false UINavigationBar.appearance().barStyle = UIBarStyle. ...

  2. UI_APPEARANCE_SELECTOR 延伸

    iOS后属性带UI_APPEARANCE_SELECTOR 可以统一设置全局作用 例如: 1>开关控件 @property(nullable, nonatomic, strong) UIColo ...

  3. Android:关于Edittext的一些设置

    1.自动弹出输入框. et_order_search.setFocusableInTouchMode(true); et_order_search.requestFocus(); CmzBossApp ...

  4. C语言中sprintf()函数的用法

    sprintf函数的用法 1.该函数包含在stdio.h的头文件中. 2.sprintf和平时我们常用的printf函数的功能很相似.sprintf函数打印到字符串中,而printf函数打印输出到屏幕 ...

  5. ios隐藏软键盘

    //判断是否为苹果 var isIPHONE = navigator.userAgent.toUpperCase().indexOf('IPHONE')!= -1; // 元素失去焦点隐藏iphone ...

  6. Intent Flag实际项目 -- 超时跳转登录界面并清理前面所有activity

    项目中涉及到登录超时跳转登录界面的逻辑,我以前的跳转flag为Intent.FLAG_ACTIVITY_CLEAR_TOP,但是点击返回按钮还是会回到上个界面.代码如下: ActivityUtils. ...

  7. 设计模式--装饰者设计模式(Decorator)

    装饰者模式又叫包装模式. 通过另一个对象来扩展自己的行为,在不破坏类的封装的情况下,实现松耦合,易扩展的效果.   抽象组件角色: 一个抽象接口,是被装饰类和装饰类的父接口可以给这些对象动态地添加职责 ...

  8. L3-004. 肿瘤诊断

    L3-004. 肿瘤诊断 题目链接:https://www.patest.cn/contests/gplt/L3-004 BFS 之前尝试使用递归dfs,提交后发现有两个段错误,发现递归层数太多,然后 ...

  9. 《Windows编程循序渐进》——MFC封装机制详解

    单文档

  10. iOS开发怎么样做第三方登陆(友盟社会化分享)

    基于前一篇文章   自定义UI后 实现如下代码   即可 //第三方登陆 //    UMSocialSnsPlatform *snsPlatform = [UMSocialSnsPlatformMa ...